gpt4 book ai didi

页面加载后的 Javascript 运行函数

转载 作者:行者123 更新时间:2023-11-30 07:03:06 25 4
gpt4 key购买 nike

我正在尝试用 Javascript 创建一个小的自动化脚本,我想使用 Opera 的用户脚本功能来定义要运行的外部脚本,并在网站上运行。我以前使用此功能来运行我用外部站点编写的脚本,效果很好。

我需要等到页面加载后脚本才能运行,但我似乎无法让它工作。目前的代码是:

if (addEventListener in document) { // use W3C standard method
document.addEventListener('load', meerfirst(), false);
} else { // fall back to traditional method
document.onload = meerfirst();
}

function meerfirst(){
nameForm = document.forms['aspnetForm'];
nameForm.elements('ctl00$CPH1$NewQuoteView$TitlesView$DropDownListTitles').value = 'MR:TRUE:MR';
nameForm.elements('ctl00$CPH1$NewQuoteView$TextBoxFirstName').value = 'James';
}

这是我自己的函数,添加了通过此处另一个问题找到的 if 语句。我也试过window.onload,还是不行。

奇怪的是,Opera 似乎根本不执行脚本,就好像我在 if 语句上设置了断点一样,它实际上从未中断过。该站点是否可以内置反用户脚本功能?还是我做错了什么来阻止这个执行?

最佳答案

将函数本身作为回调传递

addEventListener('load', meerfirst, false);
// no parens! ^^

通过放置圆括号,您可以立即调用该函数(在加载之前)并将其(无用的、非函数的)返回值传递给 addEventListener。


顺便说一句,既然您已经知道将在哪种浏览器上使用代码,为什么还要在一开始就进行该功能测试?

关于页面加载后的 Javascript 运行函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8023587/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com