我讨厌在没有代码的情况下发布问题,但如果我知道要发布什么,我就会知道问题。
我的所有jquery插件函数都已停止在实时服务器上运行。
它们仍在本地工作,所有外部JavaScript文件都应该相同。
我收到了所有这些消息$(...).whatever is not a function
。我不确定我改变了什么导致了这个...文件被检测到,我没有做任何影响范围。
有什么想法吗?
答案 0 :(得分:0)
由于这是一个相当烦人的问题,其他人无疑会在以后面对这个问题,这里有更多关于这个问题的原因和解决方案的细节。
问题:我正在加载包含<script></script>
的内容,这些内容通过加载与之冲突的javascript(真正的jQuery)来破坏我的母版页。它使我的自定义插件变得毫无用处。
解决方案:简单地渲染script
块对于加载AJAX的内容无用。这是怎么回事。
<script>
块:我尝试了几种不同的方法,但最终证明这种方法最可靠:
$.ajax(url,{
success: function(data){
data = data.replace(/<script(?:.*)>/gi,'<!--[Script Removed]>>>');
data = data.replace(/<\/script>/gi,'<<<[Script Removed]-->');
$('.faux-container').html(data);
}
});
它将<script>
块转换为无害的HTML注释,并解决了我的问题。