我正在使用 iWebkit 为我的学校创建一个小的 iphone 网络应用程序(用于制作 iphone/ipod touch 网站/网络应用程序界面的精美 css/javascript。
有一个名为Popup 的功能,它模拟您在重置所有设置时在 iPhone 的设置中获得的弹出窗口(即确认弹出窗口)。
当显示 HTML 页面时,如何使弹出窗口自动出现 - 而不是必须单击用户指南示例中的链接? (第 22 页)。我试过在 body 标签甚至 header 标签中执行 onload,但它不起作用。
我不想使用 javascript 警报,因为它不够性感。
根据下面 Doug 的建议,代码目前看起来是这样的:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<title>Popup Test</title>
<script src="javascript/functions.js" type="text/javascript"></script>
<script type="text/javascript">
document.addEventListener('load', function(){
window.setTimeout(function(){
iWebkit.popup('popup1'); // Adjust this line to have the correct popup id
}, 5000); // This is in milliseconds. Keep the number as low as possible so it still works
}, false);
</script>
123
你确定你要这么做吗?
停止服务器
取消
最佳答案
首先,您正在使用的库 (iWebkit) 正在做一件“坏事”,它会将整个 onload
事件交给自己,而不是使用正确的 addEventListener
函数将自身附加到 onload 函数。
onload
是放置它的合适位置,但这里是您需要在页面加载时调用弹出窗口的方式(在 script src='/js/functions.txt 之后添加它)。 js的
行)
<script type="text/javascript">
window.addEventListener('load', function(){
iWebkit.popup('foodpopup'); // Adjust this line to have the correct popup id
}, false);
</script>
如果这不起作用,可能是因为您的函数和它们的 onload
内容同时运行。然后你可以试试这个:
<script type="text/javascript">
window.addEventListener('load', function(){
window.setTimeout(function(){
iWebkit.popup('foodpopup'); // Adjust this line to have the correct popup id
}, 300); // This is in milliseconds. Keep the number as low as possible so it still works
}, false);
</script>
关于javascript - 如何从 iWebkit 自动触发弹出对话框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1994249/