Joomla:提取javascript documentReady回调函数在AJAX成功


Joomla: Extract javascript documentReady callback functions on AJAX success

我正在为Joomla构建一个插件,使前端ajax化。 我一直在使用 balupton 的 balupton 历史 js 页面中的脚本,它工作正常,除了任何使用 .ready() 函数的 javascript 都不会执行,因为 DOM 已经加载。

我想做的是以某种方式搜索被请求的脚本,然后删除使用 ready() 的函数,然后执行它们。

在脚本中,我们已经抓取了每个 html 文件中引用的所有脚本,并且我们可以访问每个 js 文件中的文本:

// Add the scripts
                    $scripts.each(function(){
                        var $script = $(this), scriptText = $script.text(), scriptNode = document.createElement('script');
                        scriptNode.appendChild(document.createTextNode(scriptText));
                        contentNode.appendChild(scriptNode);
                    });

正在考虑做一个简单的字符串替换,但话又说回来,我不确定是否有更好的方法来做到这一点,因为由于可能改变回调函数,它当然需要正则表达式。

提前谢谢。

我不认为更改JS是正确的方法。您是否尝试过手动触发就绪函数?

jQuery.ready();