这是我的jquery代码
this.imagePreview = function(){
xOffset = 8;
yOffset = 20;
$("a.preview").hover(function(e){
this.t = this.title;
this.title = "";
var c = (this.t != "") ? "<br/>" + this.t : "";
$("body").append(
"<p id='preview'><img src='"
+ this.href
+ "' alt='Image preview' />"
+ c
+ "</p>"
);
$("#preview")
.css("top",(e.pageY - xOffset) + "px")
.css("left",(e.pageX + yOffset) + "px")
.fadeIn("fast");
},
function(){
this.title = this.t;
$("#preview").remove();
});
$("a.preview").mousemove(function(e){
$("#preview")
.css("top",(e.pageY - xOffset) + "px")
.css("left",(e.pageX + yOffset) + "px");
});
};
// starting the script on page load
$(document).ready(function(){
imagePreview();
});
这是html代码
<a href="1.png" target="_blank" class="preview"><img src="1s.png"></a>
这是css代码
#preview{
position: absolute;
background: #333;
padding: 5px;
display: none;
color: #fff;
}
所有这一切都在这个小提琴中 http://jsfiddle.net/56wk9/ (虽然我找不到适合这个小提琴的图像,但这段代码工作正常)
此代码的作用是,它在悬停在另一个图像1s.png
上时显示图像1.png但由于此代码使用图像显示为
<a href="1.png" target="_blank" class="preview">
单击基本图像时,它会在新窗口中打开这个放大的图像..而我想要的另一个网站应该打开而不是这个放大的图像..当我把网页的链接它没有显示悬停效果。
所有帮助都是金色的。
答案 0 :(得分:1)
使用链接中的数据而不是href。
例如
<a href=""http://www.somesite.com data="image-1s.png"><img ...></a>
然后,而不是使用this.href
使用数据
$("body").append("<p id='preview'><img src='"+ $(this).attr('data') +"' alt='Image preview' />
HTML
<a href="http://www.google.com" target="_blank" class="preview" data="http://upload.wikimedia.org/wikipedia/commons/thumb/1/1a/Bachalpseeflowers.jpg/300px-Bachalpseeflowers.jpg"><img src="http://upload.wikimedia.org/wikipedia/commons/thumb/3/36/Hopetoun_falls.jpg/300px-Hopetoun_falls.jpg"></a>
的Javascript
this.imagePreview = function(){
xOffset = 8;
yOffset = 20;
$("a.preview").hover(function(e){
this.t = this.title;
this.title = "";
var c = (this.t != "") ? "<br/>" + this.t : "";
$("body").append("<p id='preview'><img src='"+ $(this).attr('data') +"' alt='Image preview' />"+ c +"</p>");
$("#preview")
.css("top",(e.pageY - xOffset) + "px")
.css("left",(e.pageX + yOffset) + "px")
.fadeIn("fast");
},
function(){
this.title = this.t;
$("#preview").remove();
});
$("a.preview").mousemove(function(e){
$("#preview")
.css("top",(e.pageY - xOffset) + "px")
.css("left",(e.pageX + yOffset) + "px");
});
};
// starting the script on page load
$(document).ready(function(){
imagePreview();
});
CSS
#preview{
position:absolute;
background:#333;
padding:5px;
display:none;
color:#fff;
/*box-shadow: 4px 4px 3px rgba(103, 115, 130, 1);*/
}