我试图理解之间的冲突
我的加载栏脚本隐藏我的内容,直到页面加载(删除了顶部的标签)
function showContent(){ //hide loading status... document.getElementById("loading").style.display='none'; //show content document.getElementById("content").style.display='block'; } window.onload = function() { showContent(); } </head> <body> <script type="text/javascript"> document.write('<div id="loading"><img src="ajax-loader.gif"></div>'); </script> <div id="content"> <script type="text/javascript"> //hide content document.getElementById("content").style.display='none'; </script>
还有2.我的livepipe滚动条使用原型(prototype)1.6.1 调用的地方是这样的:
<script type="text/javascript">
document.observe('dom:loaded',function(){
var scrollbar = new Control.ScrollBar('cases_tekst','scrollbar_track');
});
</script>
出于某种原因,要么一个起作用,要么另一个起作用,具体取决于顺序。我还有其他几个与原型(prototype)滚动条一起使用的 windows.onload 函数,但不是这个。 希望能更好地理解出了什么问题。 firebug 没有显示任何错误。 该错误一定与 onload 调用有关,因为当我调整浏览器窗口大小时,滚动条可以工作。
希望有人能解释一下冲突的原因。
最佳答案
不要使用 window.onload 来调用 showContents,而是使用原型(prototype)的 Event.observe 函数。像这样:
Event.observe(window, "load", showContent);
有关此功能的更多信息:http://www.prototypejs.org/api/event/observe
有关为什么不使用 window.load 事件模型的更多信息,请查看此站点:http://www.quirksmode.org/js/introevents.html
总的来说,quirksmode.org 是一个很好的网站,可以帮助您了解此类事物以及它们在各种浏览器中的行为方式。这是使用原型(prototype)或 jquery 等库的原因之一,因为它标准化了浏览器的大部分行为。
关于javascript - onload负载条和原型(prototype)滚动条冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4125974/