Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   не ловится "data-*", как найти причину? (https://javascript.ru/forum/events/64135-ne-lovitsya-data-%2A-kak-najjti-prichinu.html)

greenwar 21.07.2016 15:34

не ловится "data-*", как найти причину?
 
приветы!
повесил eventListener через JQ на <a '...' data-ajax='blabla'
на одной странице всё ок ловит e.target.hasAttribute('data-ajax')
а на соседней всё такое же, но не ловит...
голову поломал, как найти причину?

рони 21.07.2016 18:40

greenwar,
не информативно!!!

greenwar 21.07.2016 18:44

ну вот строка например:
<a href='/?page=clients' class='waitFB' data-ajax='client_log&id=11440744' data-X='35%' data-Y='1em'><span class='info1' title='13:54:01'>21.07.16</span></a>

а вот JS:
$('.tbl1 a.waitFB').hover(abc1,abc2);

function abc1(e) 
{
    alert(e.target.hasAttribute('data-ajax'));
}


вот abc1() с одной страницы видит data-ajax, а с другой - нет
как поймать баг? в консоли FF пусто...
он же ловит сам waitFB, но не видит в нём data-ajax, что за хрень?!
куда копать то вообще?

рони 21.07.2016 18:48

greenwar,
может вагон и тележка ... нет элемента или ещё нет, нет jquery или уже нет.

рони 21.07.2016 18:52

greenwar,
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
  <script>
$(function() {
$('a.waitFB').hover(abc1);

function abc1(e)
{
    alert(this.hasAttribute('data-ajax'));
}

});
  </script>
</head>

<body>
<a href='/?page=clients' class='waitFB' data-ajax='client_log&id=11440744' data-X='35%' data-Y='1em'><span class='info1' title='13:54:01'>21.07.16</span></a>

</body>
</html>

greenwar 21.07.2016 18:59

да у меня на другой странице такой же тру
я пытаюсь понять, почему на этой нету

greenwar 21.07.2016 19:01

Цитата:

Сообщение от рони (Сообщение 422929)
greenwar,
может вагон и тележка ... нет элемента или ещё нет, нет jquery или уже нет.

он ловит его!
значит всё на месте
он просто не видит элемент внутри

greenwar 21.07.2016 19:07

так, стоп, через this.getAttribute() он заработал...
почему он не работает через e.target.getAttribute?
хотя ровно тот же .js-файл с этой ф-ей грузится на соседней странице и работает..
abc1() лежит в файле, который грузится в <head>

рони 21.07.2016 19:36

greenwar,
e.target == span.info1

greenwar 21.07.2016 19:48

Цитата:

Сообщение от рони (Сообщение 422938)
greenwar,
e.target == span.info1

вот блин
кстати, e.currentTarget тоже работает...

спасибо!


Часовой пояс GMT +3, время: 02:03.