Почему я не могу получить какую-либо информацию об объекте dom с помощью jQuery? - PullRequest
0 голосов
/ 10 октября 2011

У меня есть функция, которая запускается для активации fancybox по клику пользователя. :

$('.fancybox').fancybox({'titlePosition': 'inside','titleFormat': formatTitle});

Эта функция вызывается:

function formatTitle(title, index,href) {
     alert($(this).get(0).tagName);
     return title;
}

Теперь я хочу отформатировать заголовок, получив доступ к созданному мной массиву, в котором есть hrefs для каждого элемента fancybox. Чтобы получить к нему доступ, я хочу иметь возможность получить класс элемента, поскольку этот класс используется в качестве ссылки на массив, например, myArray[class]=hrefValue.

Вот HTML:

<a class="fancybox" title="A microsite designed to work alongside a marketing campaign to get vacant posts filled in Bradford Royal Infirmary's Radiology department" href="images/assets/web_design/lookdeeper_fullsize.jpg">
       <img alt="thumbnail of Look Deeper" src="images/assets/web_design/lookdeeper_thumbnail.png">
</a>

Но я не могу получить ссылку на этот класс. Мое предупреждение показывает неопределенное. Тем не менее, если я просто предупреждаю $ (this), это предупреждает «объект». Итак, я думаю, что-то кроме элемента dom вызывает функцию formatTitle, и поэтому я не могу получить какую-либо ссылку на dom?

1 Ответ

0 голосов
/ 19 октября 2011

Если вы ссылаетесь на ваш массив по номерам, а не по идентификаторам, вы можете получить элемент изнутри formatTitle, используя currentIndex:

function formatTitle(title, currentArray, currentIndex, currentOpts) {
 alert(myArray[currentIndex]);
 return myArray[currentIndex];
}

Если это то, что вы хотели

...