【问题标题】:How implement a "observer" in Jquery without plugins?如何在没有插件的情况下在 Jquery 中实现“观察者”?
【发布时间】:2011-01-27 17:42:08
【问题描述】:

我需要在 Jquery 中实现http://www.prototypejs.org/api/event/observe? 也有“频率”?

我需要一张 cakephp 的票。

谢谢, 塞尔索。

【问题讨论】:

    标签: jquery ajax observer-pattern


    【解决方案1】:

    原型observe等价于jquery bind

    原型中是这样的:

    $('myElement').observe('click', function(){...});
    

    在 jquery 中相当于这个:

    $('#myElement').bind('click', function(){...});
    

    库中的实际实现是不同的,但这将提供类似的结果。此外,在 jquery 中,您不必在处理程序的末尾附加 bind() 函数,因为 jquery 会自动绑定范围。

    【讨论】:

    • 是否也可以设置“频率”?
    • @celsown 你的频率是多少?像在 ajax 中一样?
    • 是的!就像每 5 秒提交一次 myElement 值
    • 您将使用 setInterval 自己编写一个更新程序。在函数中调用 $.ajax 并使用 setInterval 调用该函数,请参阅 api.jquery.com/jQuery.ajaxdeveloper.mozilla.org/en/DOM/window.setInterval 了解更多信息
    【解决方案2】:

    除了

    $('#myElement').bind('click', function(){...});
    

    也看看

    $(document).on('click', '#myElement', function(){...}); # jquery >= 1.7
    

    它将click 事件绑定到所有当前甚至未来的元素 - 如果您希望多个对象对点击做出反应或动态添加,则特别有用。更详细的解释见http://api.jquery.com/on/

    【讨论】:

      猜你喜欢
      • 2017-03-03
      • 1970-01-01
      • 1970-01-01
      • 2015-12-16
      • 2016-02-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多