IE6的currentStyle对象中某些属性不会即时更新

如下一段css:

min-height:100px;

_height:90px;

专为IE6定义了一个高度。

 

在用js获取这个元素的高度的时候,

会发现无论这个元素当前实际高度是多少,

在IE6下,通过dom.currentStyle['height']获取到的高度,

永远都是上述css中定义的高度

而不是实际的高度值。

 

所以在用JS获取一个元素的高度的时候,

针对IE6出现的高度不对的bug,

可以从css上着手看看是否限定了高度。

 

Posted in F2E | Leave a comment

发送邮件给mysinamail.com中文乱码问题

发现用phpmailer发送邮件,

被mysinamail.com的邮箱收到的时候,中文全部乱码

 

注册一个mysinamail.com的邮箱,

进去看到邮箱右上角有编码方式选择,

但可惜只提供了两种:“Big5”和“GB2312”。

 

而发送的时候用的是UTF-8编码,

所以接收到之后就乱码了。

 

查阅网上资料,

查到的解决乱码问题的方法有两个:

标题添加编码设置,如:

?=UTF-8?B{base64_encode(“utf-8的标题”)}=?

发送的header设置:Context-type: text-html; charset=utf-8。

 

但经尝试,发现如上设置对mysinamail.com的邮箱并不起作用,

除非做编码强制转换

iconv(‘UTF-8′, ‘Big5′, ‘utf-8的标题’)。

 

为确保不是程序发送的问题,

用Gmail邮箱和QQ邮箱各发一封带中文的邮件给mysinamail.com,

全部都显示乱码。

 

由此可见,

市面上大部分的邮箱服务器采用的编码都是utf-8编码,

大家用utf-8编码的内容发送给mysinamail.com的时候,

它并不会进行编码转换,

导致中文都乱码。

 

Posted in Web Develop | Leave a comment

facebook的feed发布信息到涂鸦墙api如何插入图片

参考官方给出的feed对话框地址中的参数:

http://www.facebook.com/dialog/feed?
  app_id=123050457758183&
  link=http://developers.facebook.com/docs/reference/dialogs/&
  picture=http://fbrell.com/f8.jpg&
  name=Facebook%20Dialogs&
  caption=Reference%20Documentation&
  description=Dialogs%20provide%20a%20simple,
              %20consistent%20interface%20for%20
              applications%20to%20interact%20with%20users.&
  message=Facebook%20Dialogs%20are%20so%20easy!&
  redirect_uri=http://www.example.com/response

经测试发现,

只要确保有picture参数的时候不要带source参数,

就能正常地把图片加到post中去;

否则facebook的api会忽略掉图片。

Posted in FB Connect | Leave a comment

yii的页面缓存和动态widget真是方便

在Yii框架中如果需要用page cache,
首先得在配置文件中加一个名为“cache”的缓存配置,

比如用文件缓存的配置:

‘cache’=>array(

‘class’=>’CFileCache’,
‘directoryLevel’ => ’2′,

),

它就会在protected/runtime目录下生成缓存文件。

然后在需要整页缓存的页面的controller中,
添加一个filter:

public function filters()
{

return array(

array(

‘COutputCache’,
‘duration’ => 10800,
‘varyByParam’ => array(‘pageNum’)

),

);
}

duration是缓存时间,单位是秒
varyByParam是指定缓存以某个参数区分页面,
比如带翻页的页面:list.php?pageNum=5,就可以指定参数pageNum作为分别缓存的标志。

在整页缓存的时候,

如果希望某个区块不被缓存,

就可以使用widget来实现,在视图文件中不被缓存的区块调用widget:

<?php $this->renderDynamic(‘widget’, ‘application.extensions.mywidget’, array(‘pageNum’=>$page), true); ?>

然后在目录extensions中添加文件:mywidget.php

然后在里面实现一个自己的widget,示例如下:

<?php

class mywidget extends CWidget

{

public $pageNum;

public function init(){}

public function run()

{

echo “<h1>my first widget</h1>”;

}

}

结合page caching和widget,就可以很方便地把页面大部分代码都缓存起来,但又不失局部不缓存的灵活性。

Posted in Web Develop | Leave a comment

可恶的IE6不支持facebook的js sdk放在里

如图所示:

 

 

把facebook的js放到<head></head>里,

ie6有时候就出现上述画面,

把它移到<body>后面,

问题解决。

 

可恶的IE6.

 

Posted in F2E | Leave a comment