互联网上有很多关于这个问题的信息,但我找不到一些非常具体的信息。
我一直在使用新的欧盟cookie法律信息(javascript)更新网站。我刚刚注意到沿着ie7的某个地方没有加载javascript文件。使用警报进行测试但未显示。
脚本包括:
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script src="cookiesJs/jquery.cookie.js"></script>
<script src="cookiesJs/c.js"></script>
c.js:
document.write('<style type="text/css">a{text-decoration: none;}#cookieMessage {font-family: Arial, Helvetica, sans-serif;color: #222;background-color: #D1D3D4;padding: 8px;height: auto;position: fixed;width:200px;margin: 0px 0px 0 0;bottom:0px;right:10px;border:#FFF 2px solid;border-bottom:0px;padding: 0px 8px 8px 8px;-moz-border-radius-topleft: 8px;-moz-border-radius-topright: 8px;-webkit-border-top-left-radius: 8px;-webkit-border-top-right-radius: 8px;border-top-right-radius: 8px;border-top-left-radius: 8px;text-align:left;overflow:hidden;z-index:999999;}#cookieMessage h6 {font-size: 14px;text-transform: uppercase;padding: 0px;margin-top: 8px;margin-right: 0px;margin-bottom: 5px;margin-left: 0px;color: #222;}#cookieMessage img {border:0px;}#cookieMessage p {text-align: left;font-size: 11px;padding: 0px;margin-top: 0px;margin-right: 0px;margin-bottom: 2px;margin-left: 0px;color: #222;}#cookieMessage p a {color: #333;}#cookieMessage h6 a {color: #333;text-decoration: none;}#arrow{margin-top: -20px;}</style>');
$(document).ready(function(){
$("#polup").toggle(function(){
$("#cookieMessage").animate({height:120},500);
$("#arrow").animate({height:0},160);
},function(){
$("#cookieMessage").animate({height:22},500);
$("#arrow").animate({height:14},160);
});
});
var accepted = get_cookie("accepted");
if(accepted == null){
document.cookie = "accepted=no; path=/"; // initialize the cookie
}
function accept(){
// when the client clicks accept
$("#cookieMessage").fadeOut();
$.cookie("accepted", "yes", {
expires : 360, //expires in 10 days
path : '/', //The value of the path attribute of the cookie
});
}
function get_cookie ( cookie_name )
// method to retrieve a cookie based upon its name entered
{
var results = document.cookie.match ( '(^|;) ?' + cookie_name + '=([^;]*)(;|$)' );
if ( results )
return ( unescape ( results[2] ) );
else
return null;
}
var x = get_cookie("consentCookie");
if(x == null){
document.cookie = "consentCookie=yes; path=/";
location.reload();
}var x = get_cookie("consentCookie");
if((x == "yes") && (accepted == "no")){
//if the cookie does not exist it is the users first time on the page
document.cookie = "consentCookie=no; path=/";
var policy = '<div id="cookieMessage"><h6>Cookie Policy</h6><p>Our website uses cookies. By using our website and agreeing to this policy, you consent to our use of cookies.<a href="cookie_policy.htm">Find out more about cookies.</a></p><p><a href="#" onclick="accept();"><img src="cookiesJs/cookieimg/cookie.gif" width="20" height="20" alt="cookie" style="margin-bottom:-5px;" /> I accept</a></p></div>';
document.write(policy);
}else if((x == "no") && (accepted == "no")){
// if they have visited before but not accepted
document.write('<div id="cookieMessage">');
var policy = '<a href="#_" id="polup"><h6>Cookie Policy</h6> <img id="arrow" align="right" src="cookiesJs/cookieimg/arrow.gif" width="18" height="14" alt="arrow" /></a></h6>';
document.write(policy);
document.write('<p>Our website uses cookies. By using our website and agreeing to this policy, you consent to our use of cookies.</p><p><a href="cookie_policy.htm">Find out more about cookies.</a></p><p><a href="#" onclick="accept();"><img src="cookiesJs/cookieimg/cookie.gif" width="20" height="20" alt="cookie" style="margin-bottom:-5px;" /> I accept</a></p></div>');
$("#cookieMessage").css("height","20");
}else{
//if they have visited and accepted
document.write('<div id="cookieMessage" style="display: none"><h6>Cookie Policy</h6></div>');
}
我无法理解为什么IE没有加载文件。
答案 0 :(得分:1)
可能是编译问题:
你有一行说这个:
}var x = get_cookie("consentCookie");
看起来像是复制/粘贴问题。
我发现,如果出现错误,有时IE7会拒绝空白,而其他浏览器会“尽力”并加载/执行他们所能做的事情。
答案 1 :(得分:1)
path : '/', //The value of the path attribute of the cookie
删除尾随的逗号,应该发生魔法,你的代码应该可以正常工作。