Javascript 单击加载事件上的按钮
我有以下javascript-Javascript 单击加载事件上的按钮,javascript,html,onload,Javascript,Html,Onload,我有以下javascript- function onLoad() { if (!(document.applets && document.VLVChart && document.VLVChart.isActive())) { setTimeout('onLoad()', 200); return; } objChart = document.VLVChart; PollEvent(); } f
function onLoad() {
if (!(document.applets && document.VLVChart && document.VLVChart.isActive())) {
setTimeout('onLoad()', 200);
return;
}
objChart = document.VLVChart;
PollEvent();
}
function fan() {
objChart.reorganize();
}
然后在加载HTML页面时-
<body onLoad="onLoad()">
我是否可以在onload事件中激活fan()
功能,以便用户不必单击按钮
编辑
在尝试提供的答案后,在调试时,代码会断行-
objChart.reorganize();
在带有错误的fan()函数中-
SCRIPT5007: Unable to get value of the property 'reorganize': object is null or undefined
这很奇怪,因为当我手动单击页面上的按钮时,该功能工作正常
解决方案
经过反复的思考,我意识到在页面(更具体地说是objChart)完全加载之前,我正在尝试加载fan()
函数。因此,为什么在onLoad
事件中添加函数不起作用。我添加了一个setTimeout
-
function Fan()
{
setTimeout(function(){objChart.reorganize();},3000);
}
读了你的问题,我想你根本没试过。只需从您的onLoad()
-函数中调用该函数:
function onLoad()
{
fan();
/* … */
}
对
您可以按照乌特卡诺斯的建议使用
如果使用jQuery,还可以在头部粘贴一个脚本,其中包含:
$(function(){
...
});
正如前面所解释的,jQuery函数实际上在前面启动。奇怪的是,我尝试了您关于将fan()函数放入onload事件的第一个答案,也尝试了@feeela在onload函数中调用fan()函数。出于某种原因,两者似乎都不起作用?两者都绝对可靠。后者要求将jQuery加载到页面中。有控制台错误吗?始终检查控制台是否存在JS问题。如果问题仍然存在,请发布一个JS文件以便我们查看。如果regonization()
不是一个与您所问的问题不同的函数。您询问了如何调用fan()
onload,我提供了这个问题。这个新问题意味着一些东西没有被正确加载或声明。我想这是一个时间问题,我想我正在尝试在页面正确加载之前执行fan…我以前尝试过这些,我应该在我的问题中说明这一点。这是一个时间问题。
$(function() {
$('body').on('load', function() {
onLoad();
fan();
});
});
function onLoad()
{
fan();
/* … */
}
$(function(){
...
});