我有一个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知识非常有限,所以如果有人能帮我做,那就太棒了。
答案 0 :(得分:4)
这应该可行,假设您正在使用jQuery 1.7 +
在动态设置href为新图像后,假设您的标记标记是这样的
<a href="urltoSomeImage.jpg" id="main_view">Download Image</a>
JavasScript
$(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');
});
});
请注意,此函数仅适用于单个元素,因为我们的目标是将功能绑定到具有id main_view的元素。由于ID在DOM中应该是唯一的,如果你想拥有许多标签的功能,我会为这样的标签添加一个公共类选择器
<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');
});
});
jQuery on
是不必要的。您可以直接使用click
事件绑定。但是,如果您通过动态ajax /注入到DOM加载这些链接的标记,则应使用on
或live
。
答案 1 :(得分:0)
$(document).ready(){
$("#main_view a").click(function() {
// Code to run when user clicks on link
});
});