gpt4 book ai didi

Jquery - 大于在 IE/safari 中不起作用的用法

转载 作者:行者123 更新时间:2023-12-01 04:03:39 25 4
gpt4 key购买 nike

我遇到了一个问题,函数无法通过 IE 和 Safari 中的 if 语句执行。我的代码可以在 Chrome 和 Firefox 中运行。在产品 ListView 中,我按产品名称选取每个产品。然后,我确定它的长度和高度,如果它在其容器中创建多行名称,我想将产品向下推以排列产品名称。

出于某种原因,在 IE 和 Safari 中,该函数不会执行此 if 语句。

if( ( currNameLength >= 39 ) && ( currNameHeight >= 36 ) ) {

如果我使用 =,它就会执行,所以我相信 IE 和 Safari 不喜欢 >=

    $('.name-link').each(function() {

var currNameLength = $(this).text().length;
var currNameHeight = $(this).height();
var currName = $.trim($(this).text());

if( ( currNameLength >= 39 ) && ( currNameHeight >= 36 ) ) {

$(this).parents('div[class="product-tile"]').css('position', 'relative');
$(this).parents('div[class="product-tile"]').css('top', '20px');
$(this).parents('div[class="product-tile"]').css('border', '1px solid green');

}

});

感谢您的帮助。

最佳答案

这是因为该值以字符串形式返回。尝试添加:

  parseInt(currNameHeight)

当您使用大于时,引擎需要一个数字。然后当它看到一根绳子时它就断了。

parseInt() 将字符串解析为整数

此外,由于返回的值可能会在其末尾带有“px”,因此请执行以下操作:

 //to remove the px from the value before parsing it
parseInt(currNameHeight.replace('px',''))

currNameHeight.replace('px','') 将在将字符串解析为数字之前将其在字符串中找到的任何“px”替换为“nothing”。

关于Jquery - 大于在 IE/safari 中不起作用的用法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34596606/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com