我有一个jQuery
脚本,应该在点击它们时打开全尺寸图片。
$('img').click( function() {
var src = $(this).attr('src');
window.location.href=src;
});
但是,单击图像时,它们无法按预期打开。有谁知道为什么?任何帮助表示赞赏:)
答案 0 :(得分:1)
您的代码似乎在这里工作得很好:http://jsfiddle.net/jfriend00/n6n5R/
因此,您的事件处理程序可能已正确安装。以下是要检查的事项:
document
加载?对于第1项,我建议:
$(document).ready(function() {
$("img").click(function() {
window.location.href = this.src;
});
});
对于第2项,您可能希望使用委派事件处理:
$(document).ready(function() {
$(document).on("click", "img", function() {
window.location.href = this.src;
});
});
对于第3项,您需要检查浏览器错误控制台或调试控制台,看看哪些脚本错误可能导致脚本过早停止执行。
P.S。您还可以注意到,我使用this.src
而非$(this).attr("src")
简化了您的代码。当jQuery只是越来越慢时,使用jQuery毫无意义。
答案 1 :(得分:0)
确保在脚本之前加载Jquery。如果图像是动态加载的,请使用以下脚本:
$('body').on('click','img', function() {
var src = $(this).attr('src');
window.location.href=src;
});
答案 2 :(得分:0)
您的图片是绝对路径名吗?如果没有,你想做这样的事情:
window.location.href = window.location.href.substr(0, window.location.href.lastIndexOf('/')) + src;