OldFunc = window.onload;
window.onload = OnLoad;
function OnLoad(){
try{
var pathName = window.location.pathname.toLowerCase();
//alert(pathName);
if( pathName.indexOf("something")!=-1)
{
OnFixFontAndTable();
alert(pathName);
}
OldFunc();
}
catch(e)
{
alert(e);
}
}
function OnFixFontAndTable()
{
//$('body').attr('style','');
document.getElementsByTagName('body').style="";
}
我想使用该代码片段来删除页面中正文的样式,但是当我运行页面时,我一直都会遇到错误 “TypeError OldFunc不是函数”
我将我的网址设置为"localhost:8080/pages/something.php"
答案 0 :(得分:2)
尝试将第一行更改为:
var OldFunc = window.onload || function() {};
如果window.onload
为undefined
,并且您尝试调用它,则会收到该错误。在OldFunc
为window.onload
的情况下,上面的代码会为undefined
分配一个空函数,因此当您尝试在OldFunc()
中调用OnLoad()
时,它将不会失败。
或者,让jQuery通过指定onDomReady
事件来为您处理事件。用以下代码替换代码的前两行:
$(function() {
OnLoad();
});
答案 1 :(得分:0)
你自己在那里解释过。 CodeSnippet中没有名为OldFunc的函数。
试
$(document).ready(OnLoad);
function OnLoad(){
try{
var pathName = window.location.pathname.toLowerCase();
//alert(pathName);
if( pathName.indexOf("something")!=-1)
{
OnFixFontAndTable();
alert(pathName);
}
}
catch(e)
{
alert(e);
}
}
function OnFixFontAndTable()
{
//$('body').attr('style','');
document.getElementsByTagName('body').style="";
}
答案 2 :(得分:-1)
将OnFixFontAndTable移到顶部“OnLoad”上并再试一次