当用户访问其网站时,客户正在寻找简短的启动javascript动画第一次或访问其他域后。只要他们不在网站内导航。
基本上,我想设置一个cookie并删除它,如果他们离开域或捕获URL栏中发生的事情,我意识到这可能是出于安全/隐私的原因,但是想检查一下这里的genii可能有一个黑客的想法。这是我最接近完全解决方案的失败尝试:
function del_cookie() {
var baseUrl= 'mydomain.com';
var currUrl = document.location.href;
var splitUrl = currUrl.split('/');
var currBaseUrl = splitUrl[2];
if(currBaseUrl != baseUrl) {
document.cookie = "animation=;path=/;expires=Thu, 01-Jan-1970 00:00:01 GMT";
}
}
<body onunload="del_cookie()">
当然,currUrl此时还没有更新到新的URL,所以这不起作用。
似乎我可能拥有的最佳解决方案是仅控制DOM内部点击和更改的动画,并使地址栏不受影响。但其他人有没有想法?
答案 0 :(得分:0)
只是添加到这个问题(也在处理同样的问题)。
基本上当你在mydomain.com上并浏览到mydomain.com/page时,del_cookie知道它仍然在mydomain.com内,所以没有cookie被删除。但是当你点击雅虎书签或输入yahoo.com时,currUrl仍然认为你还在mydomain.com上。有没有办法检索即将加载的URL?
以下是用户想要的流程: 1:打开一个新的单个浏览器窗口 2:去mydomain.com 3:看加载屏幕。 4:如果你点击mydomain.com上的链接,它将不会重新加载动画和&amp;加载屏幕 5:那我们就说我去www.digg.com或www.gizmodo.com 6:离开gizmodo.com 7:决定回到mydomain.com 8:我们应该再次看到启动页面。
“启动页面”是一个div,当javascript检测到没有设置cookie时显示。它加载启动页面动画并设置会话cookie。
答案 1 :(得分:0)
如果我了解你,你想要一个启动画面显示在网站的任何入口点,而不仅仅是主页(例如。)
一种技术可能是检查HTTP_REFERER标头(原文如此)。如果它是空的或者是与当前站点的域不同的域,则很可能是第一次访问[对于此会话。]
-Oisin
答案 2 :(得分:0)
看起来最终,这是不可能的。为了后人的缘故在这里回答。