如果元素上的CSS属性不匹配,我想将用户重定向到另一个页面。
目前,这有效:
<div id="mydoom">
myDoom
</div>
<style>
#mydoom {
position: relative;
font-size: 25px;
color: red;
visibility: hidden;
display:none;
}
</style>
<script type='text/javascript'>
//<![CDATA[
$(document).ready(function() {
$(function() {
if (
$("#mydoom").css('visibility') == 'hidden' && // See if the visibility is hidden.
$("#mydoom").css('position') == 'relative' && // See if the position relative.
$("#mydoom").css('display') == 'none' && // See if the display is set to none.
$("#mydoom").css('font-size') == '25px' // See if the font-size is 25px.
) {
//do nothing
} else {
window.location.replace("http://example.com");
}
});
})
//]]>
</script>
如果我将任何CSS属性更改为其他值,它会工作并重定向页面,如果我将position:relative
更改为position:absolute
,那么页面会重定向到示例。
但是,当我尝试检查padding
属性时,它不会重定向。
例如:
<div id="mydoom">
myDoom
</div>
<style>
#mydoom {
position: relative;
padding: 12px;
color: red;
visibility: hidden;
display:none;
}
</style>
<script type='text/javascript'>
//<![CDATA[
$(document).ready(function() {
$(function() {
if (
$("#mydoom").css('visibility') == 'hidden' && // See if the visibility is hidden.
$("#mydoom").css('position') == 'relative' && // See if the position is relative.
$("#mydoom").css('display') == 'none' && // See if the display is set to none.
$("#mydoom").css('padding') == '5px' // See if padding is 5px.
) {
//do nothing
} else {
window.location.replace("http://example.com");
}
});
})
//]]>
</script>
现在你看,我在JavaScript中添加了padding属性并将其设置为5px
,但在CSS中写了12px
,现在页面应该重定向但不能重定向。
为什么padding属性不起作用?
答案 0 :(得分:0)
我可能错了,但在JQuery中很确定“填充”的简写并不总是被接受。更合适的是要求'padding-top','padding-right'......等等。 我会测试它并回到这里。