TypeError: Не удается прочитать свойство 'click' null

Я был массовым следующим/неуправляемым/благоприятным/непригоденным в twitter с этими кодами;

$('button.follow-button').click();
$('button.ProfileTweet-actionButtonUndo').click();
$('a.favorite').click();

Я нашел несколько неработающих кодов онлайн и попытался исправить, поэтому они сейчас почти работают. Единственное, что нужно перейти на страницу на Google Chrome, нажмите f12, откройте консоль и запустите команду.

Итак, теперь я хотел использовать ту же систему в Vine. Существует расширение для google chrome для использования vine (https://client.vineclient.com/), и я пытаюсь использовать его, потому что оригинальная веб-страница (vine.co) даже не полезно.

Единственное различие между твиттером и этим заключается в том, что в клиенте vine для секции ^ followers ^ всплывающее окно появляется на странице. И я не знаю, обнаруживает ли он кнопки.

Итак, код кнопки, которую я пытаюсь щелкнуть на исходной странице (я взял ее с помощью инструментов/элементов разработчика)

<div class="user">
<img alt="Tuğçe Nur TEKİN" class="avatar" src="http://v.cdn.vine.co/r/avatars/3C2E4F40F11066473630650847232_pic-r-1397241239141e51579937f.jpg.jpg?versionId=ttIz4CExCjW_4TEnxYbnehPPpXRyzMco">
<div class="wrapper">
<a class="username" 
href="#" onclick="location.href='https://client.vineclient.com/explore/users/1066473613911363584'; return false;">
Tuğçe Nur TEKİN
</a>
</div>
<a class="button follow" data-id="1066473613911363584">
<i class="icon">
</i>
</a>
</div>

То, что нужно щелкнуть здесь:

Когда я нажимаю вручную, он изменяется на это:

<a class="button unfollow" data-id="1066473613911363584"><i class="icon"></i></a>

И команда, которую я использую, чтобы попробовать щелкнуть

$(".a.follow").click();

Ошибка, которую я получаю,

TypeError: Cannot read property 'click' of null

Как я могу это исправить? Кстати, в этих кодах я не мог найти никаких кодов кнопок ^.. Спасибо!

ОБНОВЛЕНИЕ

  • http://prntscr. com/3pmo2i
  • http://prntscr. com/3pmoyk
  • http://prntscr. ком /3pmpym

Ответ 1

Я столкнулся с этой проблемой, когда я запускаю javascript на веб-странице из другого места (например, Selenium), одновременно используя инструменты разработчика. Попробуйте закрыть Инструменты разработчика и запустите script.

Ответ 2

Чтобы использовать библиотеку jQuery, вам необходимо убедиться, что библиотека загружена на страницу. Как отметил @adeneo, jQuery не возвращает нулевые значения, что означает, что переменная $ содержит ссылку на объект, который не является jQuery. Чтобы проверить, что jQuery загружен на страницу, введите typeof jQuery в хром-отладчик. Если jQuery загружается на страницу, консоль выводит "функцию". В противном случае он выведет "undefined". Шаги для добавления jQuery на вашу страницу можно найти здесь.

После того, как вы подтвердили правильность загрузки jQuery на странице, вам нужно будет отредактировать селектор CSS, который вы используете для доступа к нужному элементу.

$(".a.follow") означает "выберите все элементы, которые имеют оба класса" a "и" follow ".

<div class="a follow"></div>

Вместо этого ваш селектор должен быть $("a.follow"), что означает "выберите все элементы типа a, которые имеют" следующий "класс.

<a class="follow"></a>

Ответ 3

В моем случае решение состояло в том, чтобы просто отключить элемент-инспектор в моем браузере!:)

Ответ 4

В моем случае возник конфликт между jquery и другой библиотекой, поэтому мне пришлось реализовать jQuery.noConflict(); в script перед тем, как вызвать мой основной script.

Вы можете узнать больше о конфликте jquery здесь