0

我将 jQuery 角插件应用于这样的类:

$(".corner").corner()

在我用 Ajax 刷新屏幕之前效果很好。我正在尝试使用新.on()函数来应用它,以便具有该类的元素始终具有圆角。所以我尝试了这个(CoffeeScript):

$("body").on "load", ".corner", ->
  $(this).corner()

失败。尝试了它的几种变体。所有的失败。不可能这么难,我做错了什么?

4

2 回答 2

1

我的建议是使用livequery

$(".corner").livequery ->
  $(this).corner()

这将在页面加载以及任何新创建的元素时触发corner()。

于 2012-11-09T19:20:00.820 回答
0

我认为该load事件不会body在成功的 ajax 调用上触发。

我不知道coffeescript,但你可以使用调用的全局ajax事件.ajaxSuccess() 来监听成功的ajax调用,然后重新应用插件:

$('body').ajaxSuccess(function() {
    $(this).find('.corner').corner();
});

请注意,这可能会导致多次初始化,请确保插件可以处理或自行检查。

于 2012-11-09T19:08:22.977 回答