我想在点击事件中使用jquery调整div的宽度,我似乎无法弄清楚确切的语法是什么。
下面的是我到目前为止所尝试的一个例子。
$(function() {
$("#square").on("click", function(){
if($(this).css("width", "50")){
$(this).animate({width:"500"}, 1000);
} else {
$(this).animate({width:"50"}, 1000);
}
});
});
提前致谢。
答案 0 :(得分:2)
在你的if语句中尝试$(this).width() == 50
,因为首先css();
个函数首先检索单元,然后你就不在if语句中进行比较,如果有的话你应该$(this).css('width') == "50px"
来检索宽度并进行比较。
为了将来参考,您始终可以使用parseInt();
来删除css添加的单位
所以这样做也是有效的
if(parseInt($(this).css('width')) == "50")
代码:
$(function() {
$("#square").on("click", function(){
if($(this).width() == 50){
$(this).animate({width:"500"}, 1000);
} else {
$(this).animate({width:"50"}, 1000);
}
});
});
以下是生成的 fiddle
答案 1 :(得分:0)
试试这个 -
$("#square").on("click", function(){
if($(this).css('width') == '50px'){
$(this).animate({width:"500"}, 1000);
} else {
$(this).animate({width:"50"}, 1000);
}
});