我有一个简单的jquery条件,它只是检查css值,如下所示
if ($('.classname').css("width") < '60%') {
$.lightbox($'#popupbox'), {});
$('.classname').css({
'width': '66%'
}
}
这是较大的javascript函数的一部分,简单易用,对吧?
当屏幕尺寸大于1029px时,它工作得很好
但是,少了些什么,似乎就无法“检测”该条件为真,并且不需要触发弹出窗口,并且每次执行该函数时都会反复弹出该弹出窗口。
我以为这是直接由屏幕尺寸引起的,但不应该这样,因为css值以%为单位,并且= 60%,与屏幕尺寸无关。
任何建议将不胜感激。
答案 0 :(得分:-1)
.css()
从文档中返回了«计算样式属性»。
对于宽度,以像素为单位。那就是当前渲染的宽度。
如果要检查元素的宽度是否为另一个元素的60%(或更小),则必须进行数学计算。像这样:
var inner_element_width = $('.inner').css("width");
var outer_element_width = $('.outer').css("width");
if (inner_element_width <= (outer_element_width * 0.6)) {
// Do something
}