页面加载时滚动到给定的 jCarousel 幻灯片
stackoverflow 贡献者们大家好!我有这个脚本,可以通过浏览器 URL 的哈希值获取 jCarousel 的起始位置。类似于 text.html#2。
我想要实现的是让 jCarousel 滚动到页面加载时的给定位置。然而,我下面的代码似乎只有在我将其绑定到点击时才有效 - 它不会响应页面加载请求。
初始化jCarousel
jQuery('#body_list').jcarousel({
scroll: 1,
initCallback: bodylist_initCallback
});
回调函数
function bodylist_initCallback(carousel) {
$(window).load(function () {
if(window.location.hash) {
var hash = window.location.hash.slice(1);
carousel.scroll(jQuery.jcarousel.intval(hash));
}
});
});
另类滚动调用 以下行在 Safari 中除外
if(window.location.hash) {
var hash = window.location.hash.slice(1);
jQuery('#body_list').jcarousel('scroll', hash);
}
Hello stackoverflow contributors! I have this script that gets the starting position of my jCarousel through the browser URL's hash. Something like text.html#2.
What am trying to achieve is make jCarousel scroll to the given position on page load. However my code below seems to work only if I bind it to clicks - it does not respond to on page load requests.
Initialize jCarousel
jQuery('#body_list').jcarousel({
scroll: 1,
initCallback: bodylist_initCallback
});
Callback function
function bodylist_initCallback(carousel) {
$(window).load(function () {
if(window.location.hash) {
var hash = window.location.hash.slice(1);
carousel.scroll(jQuery.jcarousel.intval(hash));
}
});
});
Alternative scroll call
The following lines works except in Safari
if(window.location.hash) {
var hash = window.location.hash.slice(1);
jQuery('#body_list').jcarousel('scroll', hash);
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以在初始化 jCarousel 时设置
start
选项:Update
如果您想在加载页面时看到滚动动画,请尝试在
中设置超时jCarousel 的 initCallback
选项:似乎适用于 FF/Chrome。我使用的是 Ubuntu,所以无法在 IE 或 Safari 上尝试。
You could set the
start
option when you initialize the jCarousel:Update
If you want to see the scrolling animation when you load the page, try setting a timeout in the
initCallback
option for jCarousel:Seems to work in FF/Chrome. I'm on Ubuntu so I can't try it on IE or Safari.