我被要求在第三方网站上执行维护,我可以编辑javascript,但不能编辑后端代码。这个站点使用了一个在jQuery.ready调用中设置各种样式和事件的插件。我想在不引起错误的情况下停止它。我可以在模板中的插件之前和之后插入javascript,但是插件中的标记来自其他地方。我尝试过这样的东西:
<script>
var tmpReady = $.ready;
$.ready = function() {};
</script>
<pluginWhichICanNotChange>
$(document).ready( function(){ BAD STUFF } );
</pluginWhichICanNotChange>
<script>
$.ready = tmpReady;
</script>但是坏事还是会发生。谁知道我该怎么剥离它!?
发布于 2011-02-13 18:36:51
这是因为使用选择器的方法驻留在$.fn名称空间中。下面的代码应该可以工作:
<script>
var realReady = $.fn.ready;
$.fn.ready = function() {};
</script>
<pluginWhichICanNotChange>
$(document).ready(function() { /* BAD STUFF */ });
</pluginWhichICanNotChange>
<script>
$.fn.ready = realReady;
</script>https://stackoverflow.com/questions/4983656
复制相似问题