0

我有一些 jQuery 设置产品描述的高度,可以在这里看到:

https://www.gabbyandlaird.com/product/truition-products/truition-healthy-weight-loss-pack

我用来实现这一点的代码是:

$(document).ready(function() {

var $dscr = $('.commerce-product-field-field-long-description'),
    $switch = $('#toggle'),
    $initHeight = 70; // Initial height

$dscr.each(function() {
    $.data(this, "realHeight", $(this).height());    // Create new property realHeight
    }).css({ overflow: "hidden", height: $initHeight + 'px' });

$switch.toggle(function() {
      $dscr.animate({ height: $dscr.data("realHeight") }, 200);
      $switch.html("- Read More").toggleClass('toggled');

    }, function() {
        $dscr.animate({ height: $initHeight}, 200);
        $switch.html("+ Read More").toggleClass();
    });
});

我绝不是 Javascript 专家(甚至是业余爱好者)。我对 jQuery 的了解相当有限,所以我不确定上面需要更改什么,以便当下拉选择重新加载页面上的数据时,我不会丢失“阅读更多”部分的高度值产品描述。非常感谢任何帮助。谢谢!

4

1 回答 1

0

根据您上面的代码,当文档准备好时,您似乎正在做所有事情。这是你可以做的。

var initialHeight = function(){
    // you height initialization code here
}

$(function () {
    $(document).ready(initialHeight); // initializes the height on document ready         
    $("#yourSelectBox").change(initialHeight); // initializes the height on combobox selection change

});

希望这可以帮助。

于 2013-11-01T15:48:15.420 回答