如何在jQuery中设置元素的宽度

时间:2011-05-24 14:58:47

标签: jquery

如何将#book的宽度设置为#clickme的宽度?如果我在回调函数中说$(this).width()它会给我#book的宽度。#clickme中有多个锚标签。我需要增加动画结束时的宽度,请有看看让我知道

$('#clickme a').click(function() {
  $('#book').animate({
    opacity: 0.25,
    left: '+=50',
    height: 'toggle'
  }, 5000, function() {
    //set width of #book to width of #clickme a item
  });
});

谢谢

5 个答案:

答案 0 :(得分:4)

根据OP评论更新:

$("#clickme a").click(function() {
    var clicked = $(this);
    $("#book").animate({
        opacity: 0.25,
        left: "+=50",
        height: "toggle"
    }, 5000, function() {
        $(this).css("width", clicked.width())
    });
});

答案 1 :(得分:1)

$('#clickme a').click(function() {
  var _w = $(this).width();
  $('#book').animate({
    opacity: 0.25,
    left: '+=50',
    height: 'toggle'

  }, 5000, function() {
     $(this).width(_w);
  });
});

答案 2 :(得分:1)

$('#book').width($("#clickme a").width())

答案 3 :(得分:1)

$('#clickme a').click(function() { 
    var aWidth = $(this).css("width");//alert(aWidth);
    $('#book').animate({
        opacity: 0.25,     left: '+=50',     height: 'toggle'   }, 500, 
        function() {   
            //set width of #book to width of #clickme a item   
            //alert($(this).css("width"));
            $(this).css("width",aWidth);
        });
}); 

答案 4 :(得分:0)

你可以尝试这样......

$('#clickme a').click(function() {
  $('#book').animate({
    opacity: 0.25,
    left: '+=50',
    height: 'toggle'
  }, 5000, function() {
     $(this).css('width','500');
  });
});