[問題] jquery .css()在ie上的問題
我想達到的功能是: 按下按鈕後
由上方滑入一個<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
→
08/29 04:28, , 1F
08/29 04:28, 1F
→
08/29 04:28, , 2F
08/29 04:28, 2F
→
08/29 04:30, , 3F
08/29 04:30, 3F
→
08/29 11:47, , 4F
08/29 11:47, 4F
→
08/29 13:17, , 5F
08/29 13:17, 5F