我正在使用wordpress模板,其中有一个script.js文件,如下所示
的script.js
var jQuery=jQuery.noConflict();
jQuery(document).ready(function() {
//while window loads
var obj = document.getElementById("centreFrame");
var comObj = document.getElementById("communityFrame");
var side1 = document.getElementById("t3-sidebar-1");
var side2 = document.getElementById("t3-content");
function getUrlParameter(name, url) {
if (!url) url = window.location.href;
name = name.replace(/[\[\]]/g, "\\$&");
var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"),
results = regex.exec(url);
if (!results) return null;
if (!results[2]) return '';
return decodeURIComponent(results[2].replace(/\+/g, " "));
}
});
现在还有另一个脚本文件“main.js”,我想在其中调用getUrlParameter(a,b)
函数。
main.js
window.onscroll = function() {
//here I need to call getUrlParameter function
}
如何在这个onscroll函数中调用“getUrlParameter”函数?
注意:先加载script.js然后加载main.js,我也不使用任何捆绑工具。如果我在文档准备就绪之外编写此函数,则它不能在文档就绪函数内使用。
答案 0 :(得分:0)
基本上你在文件准备好之后声明这个函数getUrlParameter你需要在加载文件时声明它,所以你需要把这个函数放在
function getUrlParameter(name, url) {
if (!url) url = window.location.href;
name = name.replace(/[\[\]]/g, "\\$&");
var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"),
results = regex.exec(url);
if (!results) return null;
if (!results[2]) return '';
return decodeURIComponent(results[2].replace(/\+/g, " "));
} 文档就绪功能之外 这将解决你的问题。
答案 1 :(得分:0)
确保在html中包含脚本文件,如下所示,并确保订单如下所示
<script type="text/javascript" src="main.js" ></script>
<script type="text/javascript" src="script.js" ></script>
将函数移出jQuery.document.ready范围,并尝试它是否适合你。