推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
Plumes

绑定一个事件的 Javascript 不能执行是什么情况?

  •  
  •   Plumes · Apr 4, 2014 · 4487 views
    This topic created in 4447 days ago, the information mentioned may be changed or developed.
    在一类button上绑定了一个函数
    $("button.yes.btn.btn-success").click(function(){
    alert("hello");
    });
    点击该按钮的时候,程序并没有执行
    但是把这段代码复制到chrome的调试console中,再点击该按钮,就能执行了
    这是什么情况呢?
    10 replies    1970-01-01 08:00:00 +08:00
    jsonline
        1
    jsonline  
       Apr 4, 2014
    把你的代码发到 jsbin.com 再来讨论比较好
    jakwings
        2
    jakwings  
       Apr 4, 2014
    估计是没保证这类按钮当时是否已经存在。建议把代码发到 jsfiddle 再讨论。
    NemoAlex
        3
    NemoAlex  
       Apr 4, 2014
    楼主试试
    console.log($("button.yes.btn.btn-success"))
    估计就知道为什么了
    alexapollo
        4
    alexapollo  
       Apr 4, 2014
    JavaScript的坑
    CosWind
        5
    CosWind  
       Apr 4, 2014 via Android
    楼主绑定该事件的时候dom ready了么
    frye
        6
    frye  
       Apr 4, 2014
    @CosWind
    肯定没干这个活
    xh1994
        7
    xh1994  
       Apr 4, 2014
    $(document).on('click', 'button.yes.btn.btn-success', function() {
    alert("hello");
    });
    muzuiget
        8
    muzuiget  
       Apr 5, 2014
    像楼上所说,应该没在 domReady 时执行。

    $(function(){

    $("button.yes.btn.btn-success").click(function() {
    alert("hello");
    });

    });

    这样应该就好了。
    captainwz
        9
    captainwz  
       Apr 5, 2014
    估计是DOM没READY...
    $("button.yes.btn.btn-success").live('click',function(){
    ...
    });
    这样玩也应该可以...
    yimity
        10
    yimity  
       Apr 6, 2014
    因为你执行这个事件绑定到时候还没有这个元素呢,即使dom ready 因为有可能这个元素是后来插进去的。也有可能是页面中有元素,但是执行这句代码的时候此元素还没创建好呢,此时就要等 dom ready
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3605 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 52ms · UTC 04:51 · PVG 12:51 · LAX 21:51 · JFK 00:51
    ♥ Do have faith in what you're doing.