如何获取基于jquery的iviewer的当前src?

发布于 2025-01-07 01:52:27 字数 1240 浏览 0 评论 0原文

我目前正在使用基于 jquery 的 iviewer 来创建在线图片库。这是用于调用初始 iviewer 源图像的代码(为简洁起见进行了编辑):

var $ = jQuery;
$(document).ready(function(){
var iv1 = $(".viewer").iviewer({
    src: "/folder/001.jpg", 
});

询问 另一个问题在其他地方,我目前正在使用此方法通过将“1”添加到当前按钮来驱动下一个/上一个按钮单击时的图像 src (所有图像均使用三位数字递增命名 - 001.jpg、002.jpg 等):

var i = 1;

$("#next").click(function()
{
    i++;
    iv1.iviewer('loadImage', "/folder/" + ("00" + i).slice(-3) + ".jpg");
    return false;
});

但是,问题是在同一页面的其他地方我使用一些 jquery 代码来更改中显示的图像iviewer 基于相关链接的类属性(其编号与图像类似 - chimg001、chimg002 等):(

$("ul.imageThumbs > li > a").click(function()
{
    var k = $(this).attr("class");
    iv1.iviewer('loadImage', "/folder/" + ((k).slice(-3)) + ".jpg");
    return false;
});                 

我对 jquery 和 javascript 都很陌生,所以我很高兴听到对上述内容的任何建议修改。)

使用上述代码显示新图像后,下一个和上一个按钮相对于新显示的图像不会改变,而仅根据通过下一个/访问的最后一个图像而改变以前的按钮。

我希望能够通过首先找到 iviewer 的当前 src 然后添加一个来让下一个和上一个按钮工作,而不是当前的方法。这可以做到吗?

I'm currently using the jquery-based iviewer for an online image gallery. This is the code being used to call the initial iviewer source image (edited for brevity):

var $ = jQuery;
$(document).ready(function(){
var iv1 = $(".viewer").iviewer({
    src: "/folder/001.jpg", 
});

After asking another question elsewhere on SO, I'm currently using this method to drive next/previous buttons by adding '1' to the current image src on click (all images are named incrementally using three digits - 001.jpg, 002.jpg and so on):

var i = 1;

$("#next").click(function()
{
    i++;
    iv1.iviewer('loadImage', "/folder/" + ("00" + i).slice(-3) + ".jpg");
    return false;
});

However, the problem is that elsewhere on the same page I'm using some jquery code to change the displayed image in the iviewer on the basis of the class attribute of the relevant links (which are numbered similarly to the images - chimg001, chimg002 and so on):

$("ul.imageThumbs > li > a").click(function()
{
    var k = $(this).attr("class");
    iv1.iviewer('loadImage', "/folder/" + ((k).slice(-3)) + ".jpg");
    return false;
});                 

(I'm new to both jquery and javascript so I'm happy to hear any suggested mods to the above.)

After using the above code to display new images, the next and previous buttons don't change relative to the newly-displayed image, but only according to the last image accessed via the next/previous buttons.

I'd like to be able to have the next and previous buttons working by first finding the current src of the iviewer and then add one to that, rather than the current method. Can this be done?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

在梵高的星空下 2025-01-14 01:52:27

通过阅读您提供的链接上的插件文档,有一些部分可能有用。

info(prop, dropRotation) - 获取有关图像的一些信息。 prop 的有效值为:display_width、display_height - 图像的当前物理尺寸; orig_width, orig_height - 原始图像的尺寸; angle - 当前旋转角度; Zoom - 当前缩放值,以 % 为单位; src - 当前图像的 url;

所有方法都应该通过 jquery ui 表示法调用:$('#viewer').iviewer('method', 'arg1', 'arg2')

所以,尝试这样的事情:

$('.iviewer').iviewer('info','src');

From reading the documentation for the plugin at the link you provided, there are a few parts that may be useful.

info(prop, dropRotation) - get some info about the image. Valid values for prop are: display_width, display_height - current physical dimensions of the image; orig_width, orig_height - dimensions of the original image; angle - current rotation angle; zoom - current zoom value in %; src - url of current image;

All the methods should be called through jquery ui notation: $('#viewer').iviewer('method', 'arg1', 'arg2')

So, try something like this:

$('.iviewer').iviewer('info','src');
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文