2

我这里有这个代码应该发出警报......

jQuery(".wpcart_gallery .thickbox").click(function($){
            alert('hi');
        });

但它不起作用:(没有错误,警报永远不会出现。我的标题中有正确的 JQuery.js 文件......我的语法有问题吗?

这是HTML代码

<div class="wpcart_gallery" style="text-align:center; padding-top:5px;">
<a class="thickbox cboxElement" href="DSC_0037.jpg" rev="DSC_0037.jpg"></a>
<a class="thickbox cboxElement" href="DSC_0036.jpg"  rev="DSC_0036.jpg"></a>
<a class="thickbox cboxElement" href="DSC_0118.jpg" rev="DSC_0118.jpg"></a>
</div>

当点击 wpcart_gallery 中的一个链接时,我试图有一个点击事件。

这是页面,大图有三张图片,我正在寻找点击事件以触发如果点击这些图片中的任何一张...http://www.taranmarlowjewelry.com/?wpsc-product=product-1 -2

4

3 回答 3

3

我解决了这个问题

jQuery(".wpcart_gallery img").click(function($){
            alert('hi');
        });
于 2012-09-17T20:45:40.223 回答
2

可能是您的 HTML 无效。以下都没有结束标签:

<a class="thickbox cboxElement" href="DSC_0037.jpg" rev="DSC_0037.jpg">
<a class="thickbox cboxElement" href="DSC_0036.jpg"  rev="DSC_0036.jpg">
<a class="thickbox cboxElement" href="DSC_0118.jpg" rev="DSC_0118.jpg">

如果我是 jQuery,我会感到困惑。

如果我添加结束标签它工作正常:http: //jsfiddle.net/GtgEy/

于 2012-09-17T20:33:37.630 回答
0

您可能需要使用委托绑定:

jQuery(window).on('click', ".wpcart_gallery .thickbox", function(ev){
    alert('hi');

    ev.preventDefault();
});

window如果可以的话,您可以用其他一些父元素替换。鉴于:

<div id="test">
    <a href="#">Link 1</a>
    <a href="#">Link 2</a>
    <a href="#">Link 3</a>
    <a href="#">Link 4</a>
</div>

你可以这样做:

jQuery("#test").on('click', 'a', function(ev) {
    alert('hi');

    ev.preventDefault();
});
于 2012-09-17T20:33:06.413 回答