重定向至If-Javascript诊断树
Redirect If - Javascript
当"this._try==1"时重定向不起作用?
这是完整的JS,但它不再在点击时检查try==1,而是在窗口关闭时自动检查。
function ouvre(fichier) {
ff=window.open(fichier,"popup","width=600px,height=300px,left=50%,top=50%")
//this._try = 1;
setTimeout('this._try = 1;', 4000);
}
function playMovie(_try) {
if (this._try == 1) { playsavideo(); }
else { alert('You must share to unlock.'); }
}
function playsavideo(type) {
{
window.location = "http://google.com"
}
}
这个窗口被调用。。。
<a href="#" onClick="ouvre('https://twitter.com/share?url=https%3A%2F%2Fdev.twitter.com%2Fpages%2Ftweet-button');return false">Test</a>
您尝试使用this
作为值/全局变量的载体
但this
是一个"相对"变量,它总是与它所在对象的实例相关。
在您的代码中没有实例。即使是,函数内的this
也会引用一件事,而函数之外的任何其他this
都很可能引用另一件事。
而全球vars并不是一种好的做法。试试这个:
var i_am_a_global_var = false;
function ouvre(fichier) {
ff=window.open(fichier,"popup","width=600px,height=300px,left=50%,top=50%");
setTimeout(function(){window.i_am_a_global_var=true;bobo();}, 4000);
}
function bobo(){
if (window.i_am_a_global_var) {
window.location.href = "http://www.google.com/"
}
}
- 定义全局变量
- 当超时发生时,它将回调一个闭包(
function(){...}
),该闭包将调用bobo
函数 - 如果全局var为true,那么bobo函数就是重定向发生的地方
你这样做可能是因为其他逻辑可能会改变你的this._try
,但如果你只想在x秒后重定向,那么短版本是:
window.open(fichier,"popup","width=600px,height=300px,left=50%,top=50%");
setTimeout('window.location.href = "http://www.google.com/"', 4000);
您可以添加一个内容为window.location.href = "http://www.google.com/"
的新函数,然后编辑setTimeout('[function name]',4000)。
您必须将函数传递给setTimeout。我认为你应该在函数中进行重定向。
var that = this;
function ouvre(fichier) {
ff=window.open(fichier,"popup","width=600px,height=300px,left=50%,top=50%");
//this._try = 1;
var fn = function() {
that._try = 1;
window.location = 'http://google.com';
}
setTimeout(fn, 4000);
}
相关文章:
- 在PHP中使用javascript更改页面标题'if'
- gulp-if-javascript文件,但不在gulp-useref的特定目录中
- 带有多个elseif的Javascript if语句
- Javascript:If-then语句在函数中不起作用
- for循环中的javascript if语句找不到==
- Javascript Return and if/else
- Javascript nested if
- 在if语句下的html中使用javascript变量
- JavaScript if-else 速记错误
- 避免在if condition-Javascript中使用函数
- 在javascript中创建数组,而不是if.else
- 在Javascript中将一个值和字符串数组转换为if语句
- Javascript If else 只返回 TRUE 或只返回 FALSE
- 如何重写Javascript If语句以选择Classes而不是ID's的HTML格式
- 重定向至If-Javascript诊断树
- if-else-if JavaScript 返回 true 并退出,无论输入如何
- 如何诊断特定 JavaScript 的失败功能
- 在 IF Javascript 中赋值变量
- 写一个if.JavaScript中的else语句和switch语句
- “if"javascript中的多个条件