0

我最近发布了一个关于如何在 SilverStripe 3 中使用 Ajax 加载新页面的问题,而当用户单击菜单项时,背景图像(取决于侧面)会像幻灯片一样发生变化。可以在此处找到问题和有用的答案:在 Silverstripe 3 (with Ajax?) 中加载带有滑动动画的新页面

我已经按照上一篇文章中的建议建立了网站,一切似乎都运行良好,除了一件事:

当我单击我的 Ajax 模板中的链接时,页面以正常方式加载,而不是按需要通过 Ajax。(例如,当我有一个像这里描述的博客或团队结构时,就会发生这种情况:http: //doc.silverstripe.org/framework/en/tutorials/2-extending-a-basic-site或者当一个页面有链接到我网站的另一个页面)是否有可能以某种方式改变它?我想总是通过 Ajax 加载页面。这可能吗?

任何帮助,将不胜感激!

4

1 回答 1

1

我想您正在按照我在上一个问题中建议的方式向链接添加点击处理程序:

$('a').click(function(){...});

但是当您通过 ajax 加载新的 html 时,click 事件未绑定(因为这已经发生了)。

你可能想在这里使用事件委托:

$('body').on('click', 'a', function(){...});

这样事件总是被触发,因为它总是冒泡到身体。

于 2013-09-27T13:25:46.463 回答