在头部运行javascript,无法使用window.onload,无法使用jquery
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了在头部运行javascript,无法使用window.onload,无法使用jquery,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2054字,纯文字阅读大概需要3分钟。
内容图文
![在头部运行javascript,无法使用window.onload,无法使用jquery](/upload/InfoBanner/zyjiaocheng/720/de78cf9a658349fbb4f6fa8a2cd55a2e.jpg)
我有以下代码获取URL参数,从select元素中选择一个选项,然后隐藏select所在的div.
它将在由第三方服务提供的表单上,我只能访问表单头部的js文件,还有很多其他的javascript. jQuery不能使用(它不在头脑中).
我不确定的是如何在页面的其余部分加载后运行代码(或者至少需要的元素),我不能使用window.onload,我想尽可能地把事情包起来避免在其他地方使用相同名称的变量.
谢谢.
function getURLparameter( variable ){
variable = variable.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
var regexS = "[\\?&]"+variable+"=([^&#]*)";
var regex = new RegExp( regexS );
var results = regex.exec( window.location.href );
if( results == null )
return "";
else
return results[1];
}
var typeNum = {
abc: {
redirectURL: 'http://www.1.com',
optionIndex: 1
},
123: {
redirectURL: 'http://www.2.com',
optionIndex: 2
},
//etc etc
};
var formId = getURLparameter('SurveyID');
if (formId === 384) {
var urlType = getURLparameter('type');
var theType = typeNum[urlType];
var selectDiv = ('the_div');
var selectField = ('the_select');
if (urlType in typeNum) {
document.getElementById(selectField).options[theType.optionIndex].selected = true;
document.getElementById(selectDiv).style.visibility = "hidden";
}
}
解决方法:
您需要将它放在页面底部,在脚本中访问的所有元素下面.
如果你想包装它然后使用self-executing anonymous function:
(function() {
// all your code should be moved here
})();
这样,内部定义的变量和函数就不会在外部访问.
更新(见评论):
如果window.onload被另一个脚本使用,您仍然可以在那里添加自己的代码:
// previous onl oad function - defined in another script for example
window.onload = function() {
document.getElementById("test").innerHTML = "hello";
};
// we will add another function to onl oad
window.onload = (function() {
// previous onl oad function
var oldonload = window.onload;
// return new onl oad function ...
return function() {
// .. that will call previous onl oad
oldonload();
// and add something extra
document.getElementById("test").innerHTML += " world!";
};
})();
HERE是代码.
编辑:
symcbean的评论:
Or rather than using a closure, just use window.addEventListener() 07002
对于IE版本< 9必须使用attachEvent().见this.
内容总结
以上是互联网集市为您收集整理的在头部运行javascript,无法使用window.onload,无法使用jquery全部内容,希望文章能够帮你解决在头部运行javascript,无法使用window.onload,无法使用jquery所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。