我试图修复我的灯箱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()两次也不会停止默认事件。 –