将 HREF URL 添加到位于活动滑块图像的 jQuery 循环滑块顶部的按钮
我有一个滑块,我在滑块顶部添加了控件,即正常的“下一个”和“下一个”。以前 ::: 另外,我想添加一个按钮,单击它时将以全视图(灯箱)打开图像 ::: 我下面的代码确实填充了按钮的 href,但它似乎与当前图像不同步显示 ::: 我没有足够的 jQuery 知识来了解这个问题 ::: 我会感谢任何帮助 :::
$('.portfolio-slider').hover(function() { $('.portfolio-controls').fadeIn(); }, function() { $('.portfolio-controls').fadeOut(); });
$('.portfolio-slider .slides').cycle({
timeout: 2000,
fx: 'fade',
prev : '.prev-slide',
next : '.next-slide',
pause: 1,
after: onAfter
});
function onAfter(currSlideElement) {
$('#full-size-button').attr('href', $('a', currSlideElement).attr('href'));
}
I have a slider that I've added controls on top of the slider, the normal next & previous ::: Additionally I want to add a button that when clicked on it will open the image in full view (lightbox) ::: My code below does populate the button's href but it seems to be out of sync with the current image being displayed ::: I don't have enough knowledge of jQuery to get to the bottom of this ::: I will Appreciate any assistance :::
$('.portfolio-slider').hover(function() { $('.portfolio-controls').fadeIn(); }, function() { $('.portfolio-controls').fadeOut(); });
$('.portfolio-slider .slides').cycle({
timeout: 2000,
fx: 'fade',
prev : '.prev-slide',
next : '.next-slide',
pause: 1,
after: onAfter
});
function onAfter(currSlideElement) {
$('#full-size-button').attr('href', $('a', currSlideElement).attr('href'));
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
为什么不让打开图像大版本的按钮在单击时抓取当前图像,而不是使用在转换后运行的函数:
注意:可见图像的选择器可能需要根据您的 HTML 结构进行调整。
----编辑----
我刚刚在 JQuery Cycle 文档中注意到,您可能希望将当前代码与回调函数一起用于“before”而不是“after”:
如果您使用 before 回调,则信息将是设置到下一张幻灯片,以便您的链接将打开当前图像。
http://jquery.malsup.com/cycle/options.html
Why not have the button that opens the large version of the image grab the current image when it is clicked, rather than with a function that runs after transition:
NOTE: the selector for the visible image may need to be tweaked depending on your HTML structure.
----EDIT----
I just noticed in the JQuery Cycle docs that you may want to use your current code with the callback function for "before" rather than "after":
If you use the before callback the information will be set to the next slide so your link will open the current image.
http://jquery.malsup.com/cycle/options.html