我試圖修復我的燈箱JavaScript中的一個小錯誤,同時保持儘可能不顯眼的編輯。返回false在一個HTML錨不返回false
的問題是與主要的產品形象。如果您點擊兩個縮略圖中的任何一個,圖像將按照預期加載到lightbox內部。點擊大圖像會觸發點擊圖庫圖像的事件,並且您可以看到燈箱開始彈出,但是標記的默認事件會被觸發,圖像將加載到單獨的窗口中。這不應該發生,因爲鏈接使用返回false;
<a id="gallery-link" class="main" href="#" onclick="click($('gallery-image-0')); return false;" title="Gold Label Mattress">
<img id="gallery-image" src="/content/products/280x175/silentnight-ariel-miracoil-gold-label-limited-edition.jpg" alt="Gold Label Mattress">
</a>
除此之外,它只是一個標準的原型/ scriptaculous/lightbox2設置。
任何想法爲什麼返回false不會返回false?這令人難以置信的令人沮喪。
編輯:IE6和8 DO按照所述返回false。目前的FF,Chrome和IE9不支持。
不幸的是,這樣做在新窗口中產生了與圖像加載相同的結果。默認事件仍然沒有被阻止。也就是說,我改變了你的代碼,爲firebug添加了一個控制檯日誌,並發現點擊圖像上的ONCE會觸發事件監聽器兩次,這可能是它重寫false的原因?不幸的是,event.stop()兩次也不會停止默認事件。 –