... и я хочу превратить его в ...
За то, что это стоит, я бы не стал. Вместо я бы использовал такую функцию:
$("div.f a img").click(function() {
imagepop(this.src);
return false;
});
То, что эта строка, вероятно, завернута в обработчик ready
, делает следующее: если пользователь щелкает изображение, он выполняет действие imagepop
и отменяет событие, которое (среди прочего) предотвращает срабатывание ссылки.
Это называется прогрессивное улучшение . Пользовательские агенты с поддержкой JavaScript будут использовать вышеизложенное, а те, у которых JavaScript не включен, все равно будут видеть и переходить по ссылке. Помните, что пользовательские агенты - это не просто браузеры, они включают сканеры, пауки и т. Д., И да, браузеры с отключенным JavaScript.
Обновление : Если вы действительно хотите обрабатывать его на уровне ссылок (что может быть более удобно для клавиатуры), а не на уровне изображений, то:
$("div.f a").click(function() {
var img = $(this).find("img");
if (img[0]) {
imagepop(img[0].src);
return false;
}
});
... поскольку элемент img
, а не a
имеет src
. (И нет необходимости использовать attr
здесь, отраженное свойство src
поддерживается всеми основными - и, возможно, всеми второстепенными - браузерами.)