【发布时间】:2017-04-21 08:09:33
【问题描述】:
我正在尝试从 css 中获取价值并使其成为条件,我不知道它是否可行。我想获取 translateX 值并检查值是否为 200% 显示弹出窗口。
或者有没有其他方法可以做到这一点? 谢谢
$(window).scroll(function() {
var sTop = $(window).scrollTop();
$('.box').css("transform", "translateX(" + sTop + "%)");
if ($('.box').css("transform", "translateX") === 200) {
alert('pop');
}
});
.content {
width: 100%;
height: 1500px;
background-color: yellow;
position: relative;
overflow: hidden;
}
.box {
position: absolute;
top: 5%;
width: 30px;
height: 30px;
background-color: red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="content">
<div class="box"></div>
</div>
【问题讨论】:
-
你有两个问题。首先,您需要在
if语句中使用css()的getter,例如.css('transform')。其次,它将以这种格式返回一个字符串,您需要对其进行剖析以获得所需的值:matrix(1, 0, 0, 1, 15.9, 0) -
有没有简单的方法来获取转换值?我确实尝试获取诸如marginTop和显示之类的值,并且效果很好。但是获取转换值有点令人困惑
-
你可以使用正则表达式:stackoverflow.com/a/21522812/519413