我有一个javascript函数,在我单击索引页面上的按钮后,可以在我想要的模式下打开登录.htm窗口.htm....
function openApp() {
var options = "channelmode=" + 1 +
",resizable=" + 1 +
",menubar=" + 0 +
",toolbar=" + 0 +
",location=" + 0 +
",titlebar=" + 1 +
",status=" + 1 +
",scrollbars=" + 1;
var name = "reporting";
var appURL = "login.htm"
var newWindow = window.open(appURL,name,options);
newWindow.focus();
}
它工作正常,但现在我想将打开窗口的功能移动到加载功能的登录.htm窗口中。
例如,如果有人登录.htm本身,我希望窗口以该模式打开。
我已经尝试了一些方法,但无法弄清楚。有人可以帮我吗?
我正在使用jquery,所以我可以使用jquery来做到这一点。
谢谢
如果您有一个带有打开登录名的单击事件的 DOM 元素.htm并且您希望在单击另一个 DOM 元素时打开一个具有相同窗口属性的新窗口,只需将单击事件设置为该 DOM 元素,如<span onclick="openApp()">Login</span>
所示。
您可以导航到登录页面并设置 setTimeout。
只需将此代码放在用户导航到的登录页面中,它将在加载登录页面 DOM 后自行打开一个新窗口。
<script type="text/javascript">
setTimeout(function () {
var openApp = function () {
var options = "channelmode=" + 1 +
",resizable=" + 1 +
",menubar=" + 0 +
",toolbar=" + 0 +
",location=" + 0 +
",titlebar=" + 1 +
",status=" + 1 +
",scrollbars=" + 1;
var name = "reporting",
appURL = "login.htm",
newWindow = window.open(appURL, name, options);
newWindow.focus();
}();
}, 100);
</script>
你可以把var options
设置的部分放在openApp()
函数之外,如下所示:
var options = "channelmode=" + 1 +
",resizable=" + 1 +
",menubar=" + 0 +
",toolbar=" + 0 +
",location=" + 0 +
",titlebar=" + 1 +
",status=" + 1 +
",scrollbars=" + 1;
function openApp() {
var name = "reporting";
var appURL = "login.htm"
var newWindow = window.open(appURL,name,options);
newWindow.focus();
}
然后,您可以随心所欲地致电openApp()
。
如果要在整个页面完全加载(即加载所有图像)时运行openApp()
执行,则需要执行以下操作:
$(window).load(function(){
openApp();
});
如果要在文档处于"就绪"状态时(当 DOM 可供操作时)执行openApp()
,请执行以下操作:
$("document").ready(function(){
openApp();
});