0
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 不是函数”

我将我的 URL 地址栏输入为"localhost:8080/pages/something.php"

4

3 回答 3

2

尝试将您的第一行更改为:

var OldFunc = window.onload || function() {};

如果window.onloadundefined,并且您尝试调用它,您将收到该错误。OldFunc上面的代码将在 where window.onloadis的情况下分配一个空函数undefined,所以当你尝试调用它OldFunc()OnLoad()不会失败。

或者,让 jQuery 通过指定事件来为您处理onDomReady事件。将代码的前两行替换为:

$(function() {
    OnLoad();
});
于 2012-11-23T08:27:37.700 回答
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="";
}
于 2012-11-23T08:29:00.423 回答
-1

将 OnFixFontAndTable 移到“OnLoad”顶部并重试

于 2012-11-23T08:27:20.517 回答