JS Увеличить изображение при наведении
Привет всем!
Ребята помогите решить проблему, стараюсь подключить один скрипт для увеличения изображения... Сам скрипт:
this.imagePreview = function(){
/* CONFIG */
xOffset = 10;
yOffset = 30;
// these 2 variable determine popup's distance from the cursor
// you might want to adjust to get the right result
/* END CONFIG */
$("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();
});
Но не могу сообразить каким образом вызвать его здесь: ...(item.imageSrc ? ' <img class="dd-option-image' + (options.imagePosition == "right" ? ' dd-image-right' : '') + '" src="' + item.imageSrc + '" />' : '') +... ...Данный скрипт работает вот таким образом для наглядного примера:
...
<head>
<script src="jquery-2.1.1.min.js" type="text/javascript"></script>
<script src="main.js" type="text/javascript"></script>
<style>
#preview{
position:absolute;
border:1px solid #fff;
background:#333;
padding:5px;
display:none;
color:#fff;
}
</style>
</head>
<body>
<a href="1.jpg" class="preview"><img src="1s.jpg"></a>
</body>
</html>
Все пути, стили прописал, осталось решить каким образом вызвать его... Использовал разные варианты, добавлял во все классы class="preview" ничего не работает... Буду благодарен если направите на путь истинный... Спасибо! |
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title></title>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<style>
#preview{
position:absolute;
border:1px solid #fff;
background:#333;
padding:5px;
display:none;
color:#fff;
}
</style>
<body>
<a href="http://placehold.it/50x50" class="preview">
<img src="http://placehold.it/100x100" />
</a>
<a href="http://placehold.it/50x50" class="preview">
<img src="http://placehold.it/100x100" />
</a>
<script>
$(document).ready(function(){
/* CONFIG */
xOffset = 10;
yOffset = 30;
// these 2 variable determine popup's distance from the cursor
// you might want to adjust to get the right result
/* END CONFIG */
$("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");
});
});
</script>
</body>
</html>
|
А Я в таких случаях CSS использую: zoom, wight, transition.
|
Спасибо больше, я разобрался. :)
|
Спасибо!
Вкратце поделюсь, пилил модуль для opencart, мне нужно было чтобы в поле select каждая опция выводила изображения при наведении на нее, а сама картинка привязалась к курсору, обычными средством css не решить задачу, а вот js это то что нужно в итоге присвоил имя класса в нужном месте, все заработало.;) |
| Часовой пояс GMT +3, время: 03:16. |