jQuery: 如何设置 css 为自己的宽度?

jQuery: How can I set css with own width?

我正在尝试设置一些标签 right 属性 以便我可以在鼠标悬停时更改它。

我通过 jQuery 执行此操作的原因是因为每个都有不同的大小,不允许通过 CSS 执行此操作。

这是我的:

$('#vertical-navigation .label').css('right', $(this).width());

这当然行不通,因为 $(this) 返回的是我认为的 window 宽度。

如何为每个元素设置 right 具有元素自身宽度的位置?

您可以这样使用 function parameter

$('#vertical-navigation .label').css('right', function(){
    return $(this).width() + 'px';
});

现在取决于您的 HTML 标记,这可能就足够了:

$('#vertical-navigation .label').css('right', '100%');

在每个循环中执行它然后你可以使用 this:

$('#vertical-navigation .label').each(function() {
    var label = $(this);
    label.css('right', label.width() + 'px');
});