Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
简单jQuery算法_Jquery_Math - Fatal编程技术网

简单jQuery算法

简单jQuery算法,jquery,math,Jquery,Math,理论上讲,如果我有一个无序项目的列表 <ul> <li><a>Link1</a></li> <li><a>Link1</a></li> </ul> 提前谢谢 您忘记在一些地方使用$,并且您正在尝试获取位于特定范围内的宽度,因此不应该重新查询整个DOM。这可以做到: $('ul > li').each(function() { var liWidt

理论上讲,如果我有一个无序项目的列表

<ul>
    <li><a>Link1</a></li>
    <li><a>Link1</a></li>
</ul>

提前谢谢

您忘记在一些地方使用
$
,并且您正在尝试获取位于特定
  • 范围内的
    宽度,因此不应该重新查询整个DOM。这可以做到:

    $('ul > li').each(function() {
        var liWidth = parseFloat($(this).width());
        var aWidth = parseFloat($(this).find('a').eq(0).width());
        $(this).width((liWidth - aWidth) + liWidth);
    });
    

    看起来你忘了一些美元

    $('ul > li').each(function() {
      var liWidth = $(this).width();
      var aWidth = $(this).find('a').width();
      var subractedWidth = parseFloat(liWidth) - parseFloat(aWidth);
      var newWidth = subtractedWidth + parseFloat(liWidth);
      $(this).css('width',newWidth);  
    });
    
    你可以

    $('ul > li > a').each(function () {
        var li = $(this).closest('li'), 
            liWidth = li.width(),
            aWidth = $(this).width();
    
        li.width(liWidth + (liWidth - aWidth));
    });
    

    和$('ul>li>a)注意('ul>li>a)再次感谢您对语法的帮助
    $('ul > li > a').each(function () {
        var li = $(this).closest('li'), 
            liWidth = li.width(),
            aWidth = $(this).width();
    
        li.width(liWidth + (liWidth - aWidth));
    });