我试图暂时覆盖一些功能。
我的主函数.js
var getFilters = function() {
return "";
}
我用AJAX加载一些页面,所以加载时我想要一个不同的回报,我可以这样做,就像这样
getFilters = function() {
return "different filters";
}
当我使用AJAX加载另一个页面时,问题出现了,并且没有getFilters函数。一切都刹车了
错误:
TypeError: Can only call HTMLCollection.item on instances of HTMLCollection
有什么想法吗?
错误是因为当我用AJAX加载一个新页面时,我调用了getFilters,但该函数不存在,因为文件B(加载了AJAX),我将其删除。
function loadPage (page, type) {
loaded = page;
data = type;
filters = getFilters();
}
谢谢!
答案 0 :(得分:2)
你能做的就像是。
//Saving the original func
var org_foo = window.foo;
//Assigning proxy fucnc
window.foo = function(args){
//Performing checks
if(checkCondition(args)){
//Calling original funcs
org_foo(args);
}
};