AJAX 内部的 JQuery 卷轴中断称为 DOM 更改/插入 .load()

Posted

技术标签:

【中文标题】AJAX 内部的 JQuery 卷轴中断称为 DOM 更改/插入 .load()【英文标题】:JQuery reel breaks inside AJAX called DOM change / insertion .load() 【发布时间】:2017-02-13 08:21:37 【问题描述】:

在这种情况下我所做的一切有点难以解释,但我开始了......

从导航/菜单中,我通过.on('click').load('page.php')... 将各种带有内容的PHP 文件插入到我的索引页面中,其中一个php 页面包括与2 个JQuery reel 实例相关的3 个其他php 元素和一个另一个 .on('click') 内的 2 个下拉选择器,显示说明和默认图像。

通过在.on('click')->.load('page.php')... 中使用 getScript,我已经让我的所有 JQuery / raw JS 在调用的 PHP div 中工作 - 与 JQuery reel 相关的那些

但即使使用 getScript - JQuery reel 也只会在第一次初始化。我尝试在使用调用的 PHP 加载 div 之前使用窗口重新加载(因为在返回主页后 - 第一个实例再次工作)(它刷新到主页并且没有加载 div),我尝试清除 JQuery缓存等等……

长话短说。 JQuery reel 在初始化 css/images 时填充头部...在第一个实例上但不是在 AJAX 内部称为内容之后。

【问题讨论】:

哦,就手动将其输入头部 - 由于下拉选择器,这些“2”分组的卷轴“实例”实际上是 25 个单独的实例。 这里建议:***.com/a/31591634 还有这个:***.com/a/19185245 但即使卷轴有一个“终点” - 这并不直接适用 我已经尝试过 MutationObserver,但我认为我没有正确应用它。我收到了警报,但脚本没有运行。 【参考方案1】:

答案一直内置在 JQuery reel 中。 Petre Vostrel 是一流的。 发件人:GitHub Reel - issues “您好,请在注入 html 后使用 $.reel.scan() 方法。摘自文档:

$.reel.scan() 方法负责发现和随后转换数据配置的 Reel 图像,当 DOM 准备好时会自动调用该方法。一般情况下不需要自己扫描。

但是,当您碰巧将数据配置的 Reel 注入到已经准备好的 DOM 中时,重新扫描会很方便。"

【讨论】:

以上是关于AJAX 内部的 JQuery 卷轴中断称为 DOM 更改/插入 .load()的主要内容,如果未能解决你的问题,请参考以下文章

当页面长时间打开时,JQuery ajax 调用中断

关于js中断ajax请求

使用 JavaScript/jQuery 调用 do_action

使用 Itertools 具有内部中断的可变级别的嵌套循环

jQuery+AJAX 响应头

在 laravel 5.2 中使用 jquery 和 ajax 出现 500 内部服务器错误