- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有非常简单的代码,但它不会触发任何加载事件 - 窗口打开页面加载但不会触发事件。
var ref = window.open('http://localhost:3000/#/login','_blank','location=no');
ref.addEventListener('loadstart', function(event) {
log.info('in loadstart ');
});
ref.addEventListener('loadstop', function(event){
log.info('in loadstop ');
});
https://plnkr.co/edit/ubEk8UN6SGXkYV7PgFZZ?p=preview - Plunkr 代码以查看问题所在并提出解决方案。
简单的 10-15 行代码,却花了我整个周末的时间来找出问题所在
最佳答案
来自 window.open
的文档:
Note that remote URLs won't load immediately. When window.open() returns, the window always contains about:blank. The actual fetching of the URL is deferred and starts after the current script block finishes executing. The window creation and the loading of the referenced resource are done asynchronously.
因此,请尝试将您的事件监听器包装在 window.setTimeout
function openInApp(){
var ref = window.open('http://google.com/','_blank','location=no');
window.setTimeout(function(){
ref.addEventListener('loadstart', function(event) {
console.log('in loadstart ');
alert('start: ' + event.url);
});
}, 1000);
}
假设您没有同源问题,现在应该可以了。
关于javascript - inapp 浏览器 window.open 不会触发 loadstart 或 loadstop 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38561260/
我正在尝试通过我的 cordova 应用程序 中的 twitter 帐户登录 ios 和 android 平台.获得访问 token 后,我必须触发 inappbrowser 插件 的 loadsto
我正在开发一个带有 WebView 的 Chrome 应用程序。用于 WebView 的页面也可以在常规浏览器中运行。如果在 webview 中,页面会向主应用程序发送消息,但显然它们需要首先从应用程
我有非常简单的代码,但它不会触发任何加载事件 - 窗口打开页面加载但不会触发事件。 var ref = window.open('http://localhost:3000/#/login','_bl
我是一名优秀的程序员,十分优秀!