div .click功能不起作用

时间:2011-12-13 09:37:27

标签: jquery click

我正在尝试调用DIV .click函数,但它不起作用。我正在谈论的div是用PHP创建的。

这是PHP的结果:

<div style="position:relative;width:700px;" id="colorcontainer">
<div class='color' style='background: url(kleuren/c121.jpg); background-size: 100 72; background-repeat:no-repeat;'><span class='txt'>CBM 121<br />Blank Gelakt Eiken</span></div>
</div>

现在我尝试调用div .click函数:

<script type="text/javascript">
$(document).ready(function(){
    $('#colorcontainer > div').click(function() {
        var name = this.css('background-image');
        alert(name);
    });
});

现在它根本没有显示警报。我在这做错了什么?我已经尝试过没有document.ready,.color和各种各样的东西,但它只是没有调用函数。

6 个答案:

答案 0 :(得分:3)

您不应该使用this,它应该是$(this)Here是您代码的工作演示。

答案 1 :(得分:2)

确保使用jQuery。使用$(this)代替this

所以

var name = $(this).css('background-image');

将起作用

答案 2 :(得分:2)

试试此代码

$(document).ready(function(){ 
    $('#colorcontainer > div').click(function() { 
        var name = $(this).css('background-image'); 
        alert(name); 
    }); 
}); 

答案 3 :(得分:2)

你的javascript应该是

$(document).ready(function(){
    $('#colorcontainer > div').click(function() {
        var name = $(this).css('background-image');
        alert(name);
    });
});

答案 4 :(得分:1)

我认为出于性能目的,您应该调用包含背景图像的div,如下所示:

$('.color').click(function () {
     var name = $(this).css('background-image');
     alert(name);
});

答案 5 :(得分:0)

很久以前这个帖子已经回答了。但是,如果有人遇到类似的东西。毫无疑问,上述问题的答案已经完美陈述,但是想要分享更多的提示。(如果你没有任何语法错误 - 请尝试以下方法来查看是否触发了点击事件) 1)在click事件下方,写下警报并查看。这确保了click事件之前没有任何错误。 2)看看你提到的选择器是否存在。这里$('。color')所以应该有