首页 > 解决方案 > jQuery宽度函数参数不起作用

问题描述

我正在使用从stackoverflow中的帖子中找到的代码来水平滚动分区。我可以将 div 滚动到全宽,但不能滚动到特定的宽度。

$("div").on("click", function(event) {
  event.preventDefault();
  $("html, body").animate({
    scrollLeft: $(document).width()
  }, "slow");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>    
 
<div>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</div>

上面的代码正在运行!

jQuery 文档说 width() 函数可以获取值作为参数,但是当我尝试如下时,滚动不起作用。

$("div").on("click", function(event) {
  event.preventDefault();
  $("html, body").animate({
    scrollLeft: $(document).width(50)
  }, "slow");
});

我该如何解决这个问题?

标签: javascriptjqueryhtmlcss

解决方案


给你一个解决方案

文档:https ://api.jquery.com/scrollleft/

$("div").on("click", function(event) {
  event.preventDefault();
  $("html, body").animate({
    scrollLeft: "50px"
  }, "slow");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</div>

希望这会帮助你。


推荐阅读