记录我的学习与生活
前端开发
Jquery-Json-IE缓存问题
九 9th
今天用到ajax加载,想试试jquery的json,据说很好用,按照jquery的api文档说明设置,可以在ie下服务器端总是被缓存,仔细看了下文档,使用ajax加载时可以设置是否缓存服务器端,但是使用json方法就没有这个设置。
突然想到ecshop的严重码加载方法,就套来用了
$.getJSON(”foo.php?temp=”+Math.random(), function(json){
alert(json);
});
在url后面加上一个随机参数,浏览器就会当作不同的url处理,这样就简单的解决了Jquery使用Json方法时的缓存问题。
ps:又是一个星期没有更新了,在博客上花的时间也比较少,这周我经理请了一天的假,剩我一个人独挡一面,让我这几天也体会很多,发现原来自己和经理相差还很远…………..
还有就是我有3个meme邀请,先到先得了
IE-Cookie跨域问题
七 6th
我需要通过网站的后台嵌入iframe访问另一个网站的后台,但是两个网站的后台肯定都需要Session验证权限,Session又是基于Cookie实现的,在IE浏览器下是这样是不允许访问第三方Cookie的。
IE处于安全性和隐私考虑,默认情况下是禁止访问第三方Cookie的,我们可以通过ie浏览器的Internet 选项来设置是否允许访问第三方Cookie,但是这样只对自己有效,在别人的浏览器上就不一定行的通了。
现在介绍一种一劳永逸的方法,支持IE8。
在你创建Cookie或Session的PHP文件最上面加上
header(’P3P: CP=CAO PSA OUR’);
header(’XDomainRequestAllowed: 1′);
这是在向客户端浏览器发送两条头信息
P3P:Platform for Privacy Preferences
这样我们就可以替用户设置本页面Cookie的隐私权限了,其实和用户自己设置IE的隐私权限是一样的。
XDomainRequestAllowed:IE8新支持的特性,XDomainRequestAllowed设置为1可以实现跨域请求,这样开发Ajax就不必为跨域而烦恼了。
但是这样又为安全问题带来的隐患,使跨站攻击变的更加容易,虽然可以通过一些手段限制可以跨站的域,但是不是万不得已或者这个页面不会带来负面影响最好不要这样做。
博客换新主题
七 2nd
经过好几个小时的努力,我把WordPress主题 deniart 换成了Micolog下可以使用的主题
这是效果图

评论Ajax提交,不过Chrome下有问题,这个和xuming主题是一样的,有时间了再修正。
如果你也想修改主题的话,主题文件最好使用不带bom的utf8格式的,带bom的话页面有可能会变形。
喜欢的朋友可以发回复索要,我看到会尽快发邮件给你。
原始主题没有通过W3C验证,我修改了一下,现在可以通过W3C验证,如果你测试我的博客,会发现一条没有通过验证,那是因为Akon这篇文章里面使用了flash播放器,为了兼容ie,所出现了一条错误。
8月2日更新,主题做了些优化,现在提供下载
广告消逝效果
六 13th
做了一个广告的消逝效果,就慢慢的消逝,没有加透明度的渐变。
代码如下
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd“>
<html xmlns=”http://www.w3.org/1999/xhtml” xml:lang=”zh” lang=”zh” dir=”ltr”>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″ />
<style type=”text/css”>
html,body,div{
margin: 0;
padding: 0;
width: 100%;
}
</style>
<script type=”text/javascript”>
var Speed = 5; //设置速度
var ad = null;
var timer = null;
hidden = function(){
ad = document.getElementById(’ad’);
setTimeout(”timer = setInterval(’slowhidden();’, 1);”, 3000);
}
slowhidden = function(){
ad.style.height = ad.clientHeight – Speed + ‘px’;
if(ad.clientHeight <= Speed){
clearInterval(timer);
ad.style.display=”none”;
}
}
</script>
</head>
<body onload=”hidden();”>
<div id=”ad” style=”height: 400px; background:#D23; overflow:hidden”></div>
<div style=”height: 1000px;background:#FF0;”></div>
</body>
</html>
不同浏览器对html、body的height和width的不同解析
六 11th
这篇文章本来在我的blogger上的,可是blogger一直被墙,就转载到这吧。
1. html-body标签嵌套一起。
2. html-body-div三对标签嵌套一起。