Jquery点击事件不想解雇

时间:2013-11-30 20:13:50

标签: javascript jquery click

我在这里已经阅读了很多关于点击功能的问题,我试着按照答案,但我不能让它工作。 肯定存在逻辑问题。 无论第二行低于什么,因为console.log不记录任何内容。 这是代码:

$('#play')[0].click(function() {
    console.log('click'); 
    $("html,body").animate({
        scrollTop : arrOfDivs[2].offset().top - 80
    }, 700);
return false;
});

这是jsfiddle:http://jsfiddle.net/W3y88/

谢谢!

4 个答案:

答案 0 :(得分:1)

我更新了您的代码http://jsfiddle.net/W3y88/3/

$('#play').on("click",function() {
    alert('click');
return false;
});

答案 1 :(得分:0)

这里的一个问题是,当您声明ID时,您只能在页面上使用一次。如果要影响多个实例,则应考虑对要更改的项目使用类。

尝试将您的ID更改为类,然后将您的代码更改为:

$('.play').click(function() {
console.log('click'); 
$("html,body").animate({
    scrollTop : arrOfDivs[2].offset().top - 80
}, 700);
return false;});

当然,我假设您已经为多个对象提供了相同的 id 。如果你可以粘贴更多代码,那将会有所帮助。

对ID的引用:https://softwareengineering.stackexchange.com/questions/127178/two-html-elements-with-same-id-attribute-how-bad-is-it-really

或者,如果您引用唯一的 ID ,则可以删除[0]并且原始代码可能有效。

答案 2 :(得分:0)

您可以采用以下几种方法:http://jsfiddle.net/DWU5Y/

但是,你几乎没有什么东西丢失了:

如果你热衷于:Running jQuery inside $(window).load() function but not inside $(document).ready function

:)

<强>代码

$(document).ready(function() {
       $('#play').click(function () {
        alert('click');
        return false;
    });
});

答案 3 :(得分:0)

试试这个,它会起作用。

$('#clickme')。live('click',function(){  要做的事情 })