Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.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 jscrollpane宽度根据内容自动调整_Jquery_Jscrollpane - Fatal编程技术网

Jquery jscrollpane宽度根据内容自动调整

Jquery jscrollpane宽度根据内容自动调整,jquery,jscrollpane,Jquery,Jscrollpane,我希望在我的新网站上使用jScrollPane,但遇到了一些疑难问题。上下搜索答案,但找不到任何答案 请浏览以下网站: 我不希望为.scroll窗格指定一个确定的宽度,而是希望它根据内容展开,因为我不可能在定期更新网站时继续重新计算宽度 *由于是新用户,我无法发布图像和代码。请在网站上查看源文件 感谢您的帮助。多谢各位 问候,, 戴夫我想这可能就是你要找的。这里的演示向您展示了如何在容器内的内容发生更改时自动重新初始化容器的宽度 或者,如果您将容器的宽度设置为百分比,请查看此演示 尝试用下面的代

我希望在我的新网站上使用jScrollPane,但遇到了一些疑难问题。上下搜索答案,但找不到任何答案

请浏览以下网站:

我不希望为.scroll窗格指定一个确定的宽度,而是希望它根据内容展开,因为我不可能在定期更新网站时继续重新计算宽度

*由于是新用户,我无法发布图像和代码。请在网站上查看源文件

感谢您的帮助。多谢各位

问候,,
戴夫

我想这可能就是你要找的。这里的演示向您展示了如何在容器内的内容发生更改时自动重新初始化容器的宽度

或者,如果您将容器的宽度设置为百分比,请查看此演示

尝试用下面的代码替换当前的jScrollPane JS

$('.scroll-pane').jScrollPane({
    showArrows: true,
    autoReinitialise: true
});
希望有帮助

更新:

嗯,我现在没有太多时间,但是你可以做一个非常简单的jQuery来计算宽度

然后从图像周围移除p标记,并将其替换为一个div标记,该标记的ID指向上面的JS。顺便说一下,p标记是段落标记,用于文本

最后,在CSS中设置一个后退宽度,这样没有JS的用户就不会看到页面上的大量图像

应该找到一个只使用CSS的更好的修复方法,如果有时间的话,我会稍后再研究

第二次更新

好的,让我们把1-3%的最终细节整理出来:

5的边距只是一个粗略的指南,因为浏览器本身正在为图像添加边距/填充。让我们为每个图像添加一个固定的5px边距,而不是最后一个

你的JS基本上是一样的,只是你需要从计算的总宽度中减去-5,因为我们将从最后一张图片中去掉5px的边距

var totalImages = $("#images img").length;
var imgWidth = 452 + 5; //width of an image plus the margin
$("#imagesContainer").css("width",totalImages*imgWidth - 5);

$('.scroll-pane').jScrollPane({
    showArrows: true,
    autoReinitialise: true
});
接下来,我们将为列表中的最后一个图像创建一个类,名为lastImage,如下所示

现在,每个图像之间都有5px的空间。如果你不想要边际,那么只需改变边际:0 5px 0;至边距:0;,删除lastImage类和CSS,并从JS中删除+5和-5


希望有帮助

我想这可能就是你想要的。这里的演示向您展示了如何在容器内的内容发生更改时自动重新初始化容器的宽度

或者,如果您将容器的宽度设置为百分比,请查看此演示

尝试用下面的代码替换当前的jScrollPane JS

$('.scroll-pane').jScrollPane({
    showArrows: true,
    autoReinitialise: true
});
希望有帮助

更新:

嗯,我现在没有太多时间,但是你可以做一个非常简单的jQuery来计算宽度

然后从图像周围移除p标记,并将其替换为一个div标记,该标记的ID指向上面的JS。顺便说一下,p标记是段落标记,用于文本

最后,在CSS中设置一个后退宽度,这样没有JS的用户就不会看到页面上的大量图像

应该找到一个只使用CSS的更好的修复方法,如果有时间的话,我会稍后再研究

第二次更新

好的,让我们把1-3%的最终细节整理出来:

5的边距只是一个粗略的指南,因为浏览器本身正在为图像添加边距/填充。让我们为每个图像添加一个固定的5px边距,而不是最后一个

你的JS基本上是一样的,只是你需要从计算的总宽度中减去-5,因为我们将从最后一张图片中去掉5px的边距

var totalImages = $("#images img").length;
var imgWidth = 452 + 5; //width of an image plus the margin
$("#imagesContainer").css("width",totalImages*imgWidth - 5);

$('.scroll-pane').jScrollPane({
    showArrows: true,
    autoReinitialise: true
});
接下来,我们将为列表中的最后一个图像创建一个类,名为lastImage,如下所示

现在,每个图像之间都有5px的空间。如果你不想要边际,那么只需改变边际:0 5px 0;至边距:0;,删除lastImage类和CSS,并从JS中删除+5和-5


希望有帮助

嗨,麦克,谢谢你的建议。这不是我要找的,但我确实找到了autoReinitialise=的一个很好的用途。如果您查看源代码,您会发现以下行:

这就是我想要改变的。我希望在添加更多图像时,它能够根据需要扩展,而不是指定固定的宽度。我甚至不确定这些图像是否需要在标签中。再次感谢!亲爱的Mac,这与我正在努力实现的目标非常接近!细节中只剩下1-3%还不完美。我对编程一无所知,jScrollPane是我发现的一个很好的特性,我想合并它。当我尝试将填充/边距更改为5[var imgWidth=452+5;]以下的任何值时,图像开始垂直滚动。我还注意到,边距/填充仅应用于最后一幅图像的末尾。我添加了一个红色边框,这样你也可以自己看到它。我非常感谢你在这方面的帮助。谢谢!=*新文件上传。嗨,Mac,谢谢你的支持


劝告这不是我要找的,但我确实找到了autoReinitialise=的一个很好的用途。如果您查看源代码,您会发现以下行:

这就是我想要改变的。我希望在添加更多图像时,它能够根据需要扩展,而不是指定固定的宽度。我甚至不确定这些图像是否需要在标签中。再次感谢!亲爱的Mac,这与我正在努力实现的目标非常接近!细节中只剩下1-3%还不完美。我对编程一无所知,jScrollPane是我发现的一个很好的特性,我想合并它。当我尝试将填充/边距更改为5[var imgWidth=452+5;]以下的任何值时,图像开始垂直滚动。我还注意到,边距/填充仅应用于最后一幅图像的末尾。我添加了一个红色边框,这样你也可以自己看到它。我非常感谢你在这方面的帮助。谢谢!=*上传新文件。再次更新我的答案!再次更新我的答案!