我想请求您帮助我编码。我正在尝试在我的网站上使用Java脚本,但它并没有完全符合我的需要。
让我解释一下,下面的代码如何工作。当您使用代码打开网站时,除非您单击网站上的任何链接,否则不会发生任何事情。打开该链接页面后,在新TAB打开后,以及另一个网站http://your_adress.com打开。因此,在这个阶段,您打开了两个TAB,一个是您想要的(链接站点),另一个是您不知道的(新TAB)。
每次都会发生这种情况,您点击网站上的任何链接。
我在这里的问题是:我需要在我的代码中实现什么,以确保来自代码的网站your_adress.com每个会话只打开一次,而不是每次用户点击某篇文章时。这对用户来说非常烦人。
我的2问:我需要在代码中添加什么,所以新网站your_adress.com将仅在后台,而不是主页。我希望用户在阅读父页面上的文章之后检查网站your_adress.com,而不是之前。为了更好的解释:用户将留在他打开的页面,但第二个选项卡或窗口将打开,恕不另行通知。我希望用户注意后(如FB粉丝页面)。
以下是简单的代码:
<script type="text/javascript" src="http://code.jquery.com/jquery-2.0.3.min.js"></script>
<script language="javascript">
$(document).click(function() {
window.open(
"http://your_adress.thank_you",
"_blank"
);
});
</script>
答案 0 :(得分:0)
关于你的第一个问题..你需要阅读有关cookies的信息..你可以在这里找到它
http://www.w3schools.com/js/js_cookies.asp
以及此示例您可以在此处找到它
http://www.w3schools.com/js/tryit.asp?filename=tryjs_cookie_username
第二个问题..有更多方法可以使用
第一名: setTimeout();
通过这种方式,新网址将在5秒后打开
setTimeout(function(){
// open new window code here
} , 5000);
通过这种方式 第二次 .offset().top;
当用户滚动到达文章末尾时,新窗口将会打开
var Top_DIV_Next_Article = $("#DIV_next_article ").offset().top;
$(window).scroll(function() {
if($(window).scrollTop() > Top_DIV_Next_Article ) { //scrolled past the Top_DIV_Next_Article
// open new window code here // you need to use boolean in this case here to prevent the code open another new windows while scrolling
}
});
答案 1 :(得分:0)
非常感谢您的快速回答。我忘了告诉你,我希望这些页面能够自然地打开,而不是在一段时间之后。我想打开它们作为原生点击。我的第一个Q没有很好地解释。为此。现在代码就像打开每个页面一样工作,每次我们点击某些内容并且每次打开新窗口。我不想使用弹出窗口弹出窗口。它需要是用户本机点击。
示例:您将进入http://www.letstravel.cz页面,点击链接(或任何地方)后,您将被重定向到同一页面以链接您点击。另外,将使用FB粉丝页面打开新选项卡。同样的,没有超时。这里的问题是,在重定向之后,当你点击任何esle时,你将会打开另一个FB粉丝页面。因此,想象一下打开10篇文章,将打开10个额外的FB粉丝页面。我想打开10篇文章,一次性FB页面。每个会话(每个浏览器关闭。)
我是否需要以某种方式使用数据库?如果不是更好。或者我可以使用这样的东西?我是任何编码的真正初学者。
收集访问者的IP地址并计算时间。 如果($ sql_ip_time + 3600
我不确定方法是否合适。
第二:我会再试一次。我们有两个标签,我们将与之合作。第一个标签是文章/article.html。第二个标签尚未打开。我将点击链接到article_2.html的TAB1,然后用FB粉丝页面打开TAB2。您在浏览器中看到的是TAB2作为主要内容。你看到的是FB页面,而不是TAB1。我想要做的是点击链接上的TAB1 for article2并阅读这篇文章。届时,新的TAB2将在没有通知的情况下开放。关闭所有选项卡后,用户会注意到某个FB粉丝页面已打开。我非常感谢这里的帮助。没有这个论坛,我迷失了。非常感谢
答案 2 :(得分:0)
我的朋友已经创建了这段代码,但我不确定它有什么问题。我也想设置会话cookie,但我不知道在哪里实现这个:
document.cookie = "mtracker=somevalue; expires=0; path=/";
这是代码本身,它应该在点击页面上的任何位置后打开新选项卡(不是弹出窗口),但是每24小时只打开一次这个Facebook页面。我需要24小时更改会话,而且我不确定代码可能有什么问题。到目前为止,有人可以放弃我的进展吗?感谢
<script type="text/javascript" src="http://code.jquery.com/jquery-2.0.3.min.js"></script>
<script language="javascript">
var urlForPopup = "http://www.facebook.com";
if(!wasPopupAlreadyDisplayed())
{
var myWindow = window.open(urlForPopup, "_blank");
setCookie("WasPopupDisplayed", "true", 1); //expires in one day
}
function setCookie(cname, cvalue, exdays) {
var d = new Date();
d.setTime(d.getTime() + (exdays*24*60*60*1000));
var expires = "expires="+d.toUTCString();
document.cookie = cname + "=" + cvalue + ", " + expires;
}
function getCookie(cname) {
var name = cname + "=";
var ca = document.cookie.split(',');
for(var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ' ') {
c = c.substring(1);
}
if (c.indexOf(name) == 0) {
return c.substring(name.length, c.length);
}
}
return "";
}
function wasPopupAlreadyDisplayed() {
var wasDisplayed = getCookie("WasPopupDisplayed");
if (wasDisplayed != "") {
return true;
} else {
return false;
}
}
</script>