简单Javascript无法正常工作

简单Javascript无法正常工作,javascript,Javascript,我使用上显示的tabber脚本提供一个选项卡式页面。一般来说,它工作得很好,我唯一的抱怨是,在内容完全加载之前,选项卡不会显示,然后在屏幕正确写入时会出现跳转。请看我的意思的一个例子 我认为解决方案是像这样隐藏包含所有选项卡内容的div <div class="tabber" id="tabber" style="display:none"> 然后通过调用的一个小javascript函数来展示它 <body onLoad="ShowTabber()"> javascr

我使用上显示的tabber脚本提供一个选项卡式页面。一般来说,它工作得很好,我唯一的抱怨是,在内容完全加载之前,选项卡不会显示,然后在屏幕正确写入时会出现跳转。请看我的意思的一个例子

我认为解决方案是像这样隐藏包含所有选项卡内容的div

<div class="tabber" id="tabber" style="display:none">
然后通过调用的一个小javascript函数来展示它

<body onLoad="ShowTabber()">
javascript本身是

<script type="text/javascript">
function ShowTabber() {
document.getElementById('tabber').style.display = "block";
 }
</script>
我的小功能似乎阻止了外部javascript tabber.js的工作,因为页面显示了所有标签的内容,而标签本身不在顶部。这与我从页面中删除对外部脚本的引用的结果相同

我做错了什么

更多说明: 当tabber.js文件丢失时,页面会按照您的预期依次显示所有选项卡的内容。运行上面解释的脚本具有完全相同的效果;因此,我的结论是脚本阻止了主javascript的运行

'onLoad': function(argsObj) {
    /* Display an alert only after tab */
    if (argsObj.tabber.id == 'tab') {
      alert('Finished loading tab!');
    }
  }
默认情况下,选择一个选项卡。加载完成后,该选项卡将显示一条消息


好吧,我用jQuery解决了这个问题,但现在它又提出了另一个问题

作为对PSR的回应,我更深入地研究了jQuery。切换到.tabs太复杂了,但我确实在适当的时候使用jQuery隐藏和显示了一些div

我在tabber div的前面放了一条简单的小行,以显示加载消息

<div id="loading" align="center" style="position:relative;top:70px"><h6>Loading ...</h6></div>
然后我把这个脚本放在头部,jQuery行下面

<script type="text/javascript">
    $(document).ready(function(){
        $("#tabber").hide();
        $("#loading").hide();
        $("#loading").fadeIn(1000);
     });
    $(window).load(function(){
        $("#loading").hide();
        $("#tabber").fadeIn(300);
     });
function checkResize(id){
      var win=document.getElementById(id).contentWindow.document.body.scrollHeight;
      alert(win);
}
</script> 

这很好,但有几个选项卡的内容有iFrame,这个脚本破坏了我在这些iFrame上使用的自动调整大小脚本。我将打开一个新问题,看看是否有人对此有答案。

您使用的是jQuery中的.tabs吗?请您再解释一下……我不使用jQuery。老实说,我远离它,因为我不理解它。也许是时候学习了。Napster,我会编辑这篇文章,试图给出更多的解释。看看这个解释,如果你还有问题,再问一次