作者liullen (滑蛋)
看板Ajax
标题[问题] jquery .css()在ie上的问题
时间Sat Aug 28 22:54:21 2010
我想达到的功能是: 按下按钮後
由上方滑入一个<div>
目前作法是将<div>透过.css()将初始位置设定在视线外
也就是 top: -theDiv.height()
当click时再透过.animate()将<div>移动到画面中央
可是所有浏览器都能正常执行,唯独ie8会失效
目前透过注解找到问题出在初始化位置的.css()
不知道有什麽方法能够解决呢,谢谢
以下是我的程式:
var asw = $("
#advancedSearchWindow");
var handleHeight = asw.height();
var handleWidth = asw.width();
var originOffsetRight = window.innerWidth/2;
var center = window.innerHeight/2 - handleHeight/2;
//设定初始位置状态
asw.css({"left": originOffsetRight - handleWidth/2,
"top": -10-handleHei,
"opacity": 0}).hide();
asw.hide();
//处理click事件,打开与关闭
$("
#openHandle").click( function() {
if ( asw.is(":hidden") )
asw.show().animate({ "top": center, opacity: 100 }, 500)
else if ( !(asw.is(":hidden")) )
asw.animate({ "top": -10-handleHeight, "left": originOff
handleWidth/2, opacity: 0 }, 500).hide(500);
return false;
});
$("
#closeHandle").click( function(){
asw.animate({ "top": -10-handleHeight, "left": originOffsetRight
handleWidth/2, opacity: 0 }, 500).hide(500);
return false;
});
// 使进阶搜寻可移动
asw.draggable({ handle: '#handle' });
$("#handle").disableSelection();
// 当浏览器视窗大小更动後,重新设定进阶搜寻的属性
var resizeWindow = function () {
originOffsetRight = window.innerWidth/2;
center = window.innerHeight/2 - handleHeight/2;
};
window.onresize = resizeWindow;
(!)还有一个小问题
我想达到的是:
搜寻发送表单後,跳出"search..."的block,
当搜寻完成并完整换页的前"一瞬间",才将这个block拿掉,
这要用什麽方法作到呢? 找了一些event都不是我要的,
而unload有一点点不了解...
我
还只是个学习中的新手,谢谢回答的神人!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.128.138.43
1F:→ clonn:window.innerWidth <- Fx support only 08/29 04:28
4F:→ liullen:谢谢 clonn 提醒 08/29 11:47
5F:→ liullen:问题解决了:D 08/29 13:17