gpt4 book ai didi

javascript - setInterval 未在 click() 函数内运行

转载 作者:行者123 更新时间:2023-12-03 12:39:42 24 4
gpt4 key购买 nike

这个问题以前没有被问过,因为我已经广泛搜索了答案,但我遇到了困难。

当我通过控制台或 outisde onclick 函数运行此代码时,它通过打开 facebook oauth 对话框完美地工作,完成后关闭并重新加载原始页面。

var win = window.open('/auth/facebook','location=yes, scrollbars=yes, width=640, height=359', true);


var intervalID = setInterval(function(){
if(win.closed){
location.reload();
}
}, 100);

我的问题是在 click() 函数中它根本不起作用。

$(document).ready(function() {

var intervalID = null;
var win = null

$("#flogin").click(function(){

win = window.open('/auth/facebook','location=yes, scrollbars=yes, width=640, height=359', true);


intervalID = setInterval(function(){
if(win.closed){
location.reload();
}

}, 100);
});
});

对于你们所有人来说,这似乎是一个非常简单的问题,并且可能有一个简单的答案,但我似乎找不到。感谢您的帮助!

最佳答案

正如您在评论中提到的,您正在使用 <a> tag
使用preventDefault防止默认操作

这应该有效

$(document).ready(function() {

var intervalID = null;
var win = null

$("#flogin").click(function(event){
event.preventDefault(); //prevents the default action
win = window.open('/auth/facebook','location=yes, scrollbars=yes, width=640, height=359', true);


intervalID = setInterval(function(){
if(win.closed){
location.reload();
}

}, 100);
});
});

关于javascript - setInterval 未在 click() 函数内运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23578142/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com