我有一個鏈接與縮略圖相匹配的集合。我需要將這些縮略圖加載爲背景圖像設置爲div的div。我使用的是單個圖像,其中包含所有縮略圖,因此我不能將圖像作爲圖像加載。點擊圖片應該做同樣的點擊鏈接不過,我做了一個的jsfiddle來說明我的意思(並顯示問題):觸發一個錨鏈接點擊
當我點擊有一個新的窗口,兩個環節打開它有我想要的網站。但是當我點擊縮略圖時,我無法點擊所觸發的鏈接。
點擊鏈接將有額外的功能(統計數據),所以我更喜歡觸發鏈接的點擊過相同的自定義功能結合到錨和的div兩者。
在此先感謝
我有一個鏈接與縮略圖相匹配的集合。我需要將這些縮略圖加載爲背景圖像設置爲div的div。我使用的是單個圖像,其中包含所有縮略圖,因此我不能將圖像作爲圖像加載。點擊圖片應該做同樣的點擊鏈接不過,我做了一個的jsfiddle來說明我的意思(並顯示問題):觸發一個錨鏈接點擊
當我點擊有一個新的窗口,兩個環節打開它有我想要的網站。但是當我點擊縮略圖時,我無法點擊所觸發的鏈接。
點擊鏈接將有額外的功能(統計數據),所以我更喜歡觸發鏈接的點擊過相同的自定義功能結合到錨和的div兩者。
在此先感謝
你好工作演示在這裏:http://jsfiddle.net/f6FJ3/19/
的觸發原因閱讀:jQuery: trigger click() doesn't work?
It's important to clarify that doing jQuery('#open').click() does not execute the href attribute of an anchor tag so you will not be redirected. It executes the onclick event for #open which is not defined.
下面的代碼將得到窗口所需的輸出獲得點擊圖片打開。
jQuery代碼
$(document).ready(function(){
$('.tmb').click(function(){
var target=$(this).parent().find("a");
$("#debug").text("clicked "+target.text());
//target.triggerHandler('click');
window.open(target.attr('href'));
});
});
希望這有助於,乾杯!
在HTML4 click事件被定義爲僅輸入元素和一些瀏覽器中,最值得注意的是FF,strictly followed the specification。然而HTML5遊戲的改變,任何現代的瀏覽器實現了這個功能,但 jQuery的仍然有對於這個事件的特殊情況(摘自jquery trigger method):
if (!onlyHandlers && !event.isDefaultPrevented()) {
if ((!special._default || special._default.apply(elem.ownerDocument, data) === false) && !(type === "click" && jQuery.nodeName(elem, "a")) && jQuery.acceptData(elem)) {
// Call a native DOM method on the target with the same name name as the event.
作爲一種變通方法,您可以更改代碼:
target.trigger("click");
到
target.get(0).click();
你爲什麼不只是放在''約於DIV這樣你就可以CLI ck整個div? – 2012-03-28 09:03:16
@manuelvanRijn:這確實是一個很好的解決方法。我不得不在佈局中切換一些東西,但這可能會很好地工作,謝謝! – patrick 2012-03-28 09:08:15
它不能解釋爲什麼事件沒有被觸發,但... – patrick 2012-03-28 09:18:53