frameset的cols屬性 淺析IE10兼容性問題

最近需求涉及瀏覽器的兼容性,首先處理的是ie10 。
主頁用 frameset 嵌了兩個頁面,左側為菜單欄,可以通過改變 frameset 的 cols 來收縮 。別的瀏覽器正常 , 但 IE10 卻沒任何的反應 。
復制代碼 代碼如下:
function hide_show(){
if(window.parent.outer_frame.cols=="0,10,*"){
frameshow.src="https://www.questions.com.cn/dnjc/%=request.getContextPath()%/common/images/left_handle.gif";
div_hide_show.title="隱藏"
window.parent.outer_frame.cols = "210,10,*";
}else{
frameshow.src="https://www.questions.com.cn/dnjc/%=request.getContextPath()%/common/images/right_handle.gif";
div_hide_show.title="顯示"
window.parent.outer_frame.cols = "0,10,*";
}
}

設置cols無效果,設置rows可以,這個是由于IE10的BUG問題,需要調整頁面大小才會生效:
復制代碼 代碼如下:
function hide_show(){
if(window.parent.outer_frame.cols=="0,10,*"){
frameshow.src="https://www.questions.com.cn/dnjc/%=request.getContextPath()%/common/images/left_handle.gif";
div_hide_show.title="隱藏"
window.parent.outer_frame.cols = "210,10,*";
}else{
frameshow.src="https://www.questions.com.cn/dnjc/%=request.getContextPath()%/common/images/right_handle.gif";
div_hide_show.title="顯示"
window.parent.outer_frame.cols = "0,10,*";
}
【frameset的cols屬性 淺析IE10兼容性問題】/*force ie10 redraw*/
if(navigator.userAgent.indexOf(’MSIE 10.0’) != -1){
var w = parent.document.body.clientWidth;
parent.document.body.style.width = w1’px’;
setTimeout(function(){
parent.document.body.style.width = w - 1’px’;
parent.document.body.style.width = ’auto’;
}, 0);
}
}

相關經驗推薦