javascript - 这个漂亮的小 jQuery 代码似乎不起作用.. 任何人都知道为什么?

标签 javascript jquery refactoring

如果我运行它。它不返回任何错误。而在 Firebug 中,它实际上会选择 DOM 中的适当元素。

如果我把它拆开并做这样的事情:

$('img[hspace]').css('marginLeft', ($('img[hspace]').attr('hspace') / 2) + 'px')

有效。

这是整个怪物。

$('img[hspace]').each(function(el){
    var pixels = parseInt($(el).attr('hspace'));
    if(isNaN(pixels) || pixels < 1)
        pixels = 0;
    else
        pixels = pixels / 2;
    $(el).css('marginLeft', pixels + 'px')
         .css('marginRight', pixels + 'px')
         .removeAttr('hspace');
});

更新

我的 HTML:

 `<div class='grid_7'>
        <p><p>
            this is mys</p>
        <p>
            <img align="left" alt="dude its me" border="10" height="168" hspace="30" src="http://s3.amazonaws.com/hq-photo/root/system/photos/6187/resized_orig/photo.jpg" vspace="10" width="130" /></p>
        <p>
            this is as good as it gets</p>

        <p>
            this isasd</p>
        <p>
            sdfasdfasdfasdfasd</p>
        <p>
            asdfasdfasdf</p>
        <p>

            asdfa</p>
        <p>
            sdfasdfasdf</p>
        <p>
            &nbsp;</p>
        <p>
            &nbsp;</p>
        <p>

            &nbsp;</p>
        <p>
            &nbsp;</p>
        <p>
            &nbsp;</p>
        <p>
            <img align="right" alt="it's also me" border="50" height="168" hspace="50" src="http://s3.amazonaws.com/hq-photo/root/system/photos/6187/resized_orig/photo.jpg" vspace="50" width="130" /></p></p>
      </div>`

最佳答案

每个函数passes in the index as the first parameter, not the element .您可能想要执行 $(this) 而不是 $(el)

关于javascript - 这个漂亮的小 jQuery 代码似乎不起作用.. 任何人都知道为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3347788/

相关文章:

ruby - 如何将数组中的多个对象铲到一个对象中?

javascript - Onclick 一个 Div

javascript - 当 dom 元素中包含文本删除时,删除整个元素

c++ - 有没有办法在 std::array 之间切换

c++ - 如何更新旧的 C 代码?

javascript - 如何查找不在数据属性内的所有元素

javascript - 单击 Angular JS 中的输入字段事件

javascript - 仅允许电子邮件列表使用表单 javascript 验证提交请求

javascript - 使用 RequireJS 预编译的 Handlebars 模板

jquery - 从 Controller 修改gsp中的表