在jQuery中通过AJAX加载内容时的Gallery滑块错误

时间:2011-02-05 22:45:27

标签: javascript jquery ajax slider mcustomscrollbar

我正在使用jQuery插件(link)将外部页面拉到我主页上的div中,每个外部页面都包含一个基于jQuery的水平图库滑块。

示例:http://www.iamtimothylong.com/example

您会注意到,当通过AJAX请求加载外部页面时(通过单击“book one”或“book two”),这些外部页面中的水平滑块将停止运行。

但是,如果静态放置在div中,水平滑块确实有效(只是很明显滑块本身不存在问题)。

任何人都知道解决方案/解决方法?一个人说

“在XHR请求完成后,您需要将滑块重新绑定到新元素。在AJAX请求的成功处理程序中,执行mScrollBar()绑定。”

不幸的是,我是一个编程无知的人,我需要用非专业人士的术语来拼写。 :)

AJAX加载器源位于:/js/menu.js

1 个答案:

答案 0 :(得分:0)

我想说这是用.live('event')

替换未触发的事件的经典案例

基本上,当javascript被激活并在加载页面时(或者每当被调用时)附加事件处理程序时,它会将它们附加到当时页面上存在的当前现有元素,因此当您加载新内容时(通过AJAX)这些事件没有附加到刚加载的新内容事件并与选择器匹配。

为了解决这个问题,jQuery有一个.live()事件,它匹配任何当前存在的DOM元素 AND 以后添加的动态元素。