我有以下代码来捕获浏览器调整大小事件。
window.onresize = function(){
var style = $('#button-selection').position();
if(style == "relative"){
$("#button-section").css("position"," ");
}else if(style == "fixed"){
$("#button-section").css("position","relative");
}
};
window.onresize = function(){
var style = $('#button-selection').css('position');
if(style == "relative"){
$("#button-section").css("position"," ");
}else if(style == "fixed"){
$("#button-section").css("position","relative");
}
};
样式返回undefined。文档准备好后我正在运行它。我尝试使用窗口准备但结果是一样的。以上两种方法都返回undefined!
答案 0 :(得分:5)
改变这个:
var style = $('#button-selection').position();
到此:
var style = $('#button-selection').css('position');
.position()
用于获取元素的坐标。
获取匹配元素集中第一个元素的当前坐标,相对于偏移父元素。
请改用$(window).resize()
。我在这里有一个测试用例场景:in this fiddle.
$(window).resize(function () {
var style = $('button').css('position');
if (style == "relative") {
alert('relative');
} else if (style == "fixed") {
alert('fixed');
}
});
答案 1 :(得分:1)
jQuery docs说.position()是:
描述:获取第一个元素的当前坐标 匹配元素的集合,相对于偏移父元素。
你应该使用:
var style = $('#button-selection').css('position');