1

我有一个用主图像替换缩略图的 jQuery 函数。这是我用来替换主图像的代码:

$(document).ready(function(){
    $(".wheelFinishThumbs a").click(function() {
    var mainImage = $(this).attr("href");
    var mainTemp = mainImage.replace(/-mid/,'');
    var mainTemp = mainTemp.replace(/png/,'jpg');
    $("#main_view img").attr('src', mainImage );
    $("#main_view a").attr('href',mainTemp);
    return false;       
    });

我使用 PHP 函数通过更改标题值来下载(保存)图像。这是我用来下载图像的 HTML 代码

<a href="#" onclick="window.open('download.php?file=image.jpg','_self', 'download', 'status=0');">Click to download</a> 

但由于“image.jpg”必须是我的动态变量,所以我必须如何在 jQuery 图像替换函数中调用此参数,并在每次更改主图像时动态替换“image.jpg”。我想用var mainImage我的图像交换功能替换 image.jpg。

我的 jQuery 知识真的很有限,所以如果有人可以帮助我做到这一点,那就太好了。

4

2 回答 2

4

这应该可以工作,假设您使用的是 jQuery 1.7+

假设在您将 href 动态设置为新图像后,您的标签标记是这样的

<a href="urltoSomeImage.jpg" id="main_view">Download Image</a>

JavaScript

$(function(){
  $(document).on("click","#main_view",function(e){
      e.preventDefault();
      var self=$(this);
      alert("replace this with awesome code")

      window.open('download.php?file='+self.attr("href")+,'_self', 'download', 'status=0');
  });
});

请注意,此函数仅适用于单个 a 元素,因为我们的目标是将功能绑定到 ID 为 main_view 的元素。由于 ID 在 DOM 中应该是唯一的,如果您想拥有许多 a 标签的功能,我会像这样向 a 标签添加一个通用类选择器

<a class="aDownloadble" href="urltoSomeImage2.jpg" id="main_view">Download Image2</a>
<a class="aDownloadble" href="urltoSomeImage4.jpg" id="main_view">Download Image4</a>

并像这样更新我的脚本

$(function(){
  $(document).on("click",".aDownloadble",function(e){
      e.preventDefault();
      var self=$(this);
      alert("replace this with awesome code")

      window.open('download.php?file='+self.attr("href"),'_self', 'download', 'status=0');
  });
});

jQueryon不是必需的。您可以直接使用click事件绑定。但是,如果您通过 ajax 加载这些链接的标记/动态注入到 DOM,您应该使用onor live

于 2012-06-14T19:27:26.507 回答
0
$(document).ready(){

    $("#main_view a").click(function() {
     // Code to run when user clicks on link
    });
});
于 2012-06-14T19:24:48.710 回答