巧解jquery及其插件一些bug

在开发傲游新浪微博插件中,使用jquery遇到一些问题,原因和解决方法如下。

 

1、thickbox的参数问题

在thickbox的例子中,以inline方式调用,形式如#TB_inline?height=300&width=300&inlineId=myOnPageContent。

但是发现这样调用不能设定弹出层的高度,调试到tb_parseQuery方法时,发现如上的整个串被整个传递进来,而parse方法是根据;或者&来分隔参数的,造成无法获得第一个参数。

巧解:加一个无用的参数代替height作为第一个参数。例如#TB_inline?a=a&height=300&width=300&inlineId=myOnPageContent。

 

2、在使用interface时slideDown的飘移

使用interface插件时,如果元素居中,使用slideDown会产生飘移,出现后会突然出现在最左边,然后随着点击或者hover又出现在正中。

巧解:在外层再套一个div,对这个div使用slideDown方法。

 

3、thickbox的漏空问题

thickbox显示一个div时,只显示里面的元素,没有这个div的背景。

巧解:在这个div里再用一个div包含所有的元素,设置这个div的css属性即可。

 

4、relative元素在slide时的问题

relative元素是相对定位,如果它定位的元素也同时需要slide,这个元素的位置就会飘忽不定。

巧解:弃用相对定位,用js来计算此元素的margin代替left和top等属性。

 

posted @ 2010-07-27 17:58  javawebsoa  Views(144)  Comments(0Edit  收藏  举报