Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 03.09.2015, 16:02
Интересующийся
Отправить личное сообщение для jess23 Посмотреть профиль Найти все сообщения от jess23
 
Регистрация: 03.09.2015
Сообщений: 10

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" ничего не работает...

Буду благодарен если направите на путь истинный...

Спасибо!
Ответить с цитированием
  #2 (permalink)  
Старый 03.09.2015, 17:26
Профессор
Отправить личное сообщение для Decode Посмотреть профиль Найти все сообщения от Decode
 
Регистрация: 31.01.2015
Сообщений: 576

<!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>
Ответить с цитированием
  #3 (permalink)  
Старый 04.09.2015, 00:49
Аватар для AntonMs
Профессор
Отправить личное сообщение для AntonMs Посмотреть профиль Найти все сообщения от AntonMs
 
Регистрация: 25.01.2015
Сообщений: 163

А Я в таких случаях CSS использую: zoom, wight, transition.
Ответить с цитированием
  #4 (permalink)  
Старый 04.09.2015, 11:33
Интересующийся
Отправить личное сообщение для jess23 Посмотреть профиль Найти все сообщения от jess23
 
Регистрация: 03.09.2015
Сообщений: 10

Спасибо больше, я разобрался.
Ответить с цитированием
  #5 (permalink)  
Старый 04.09.2015, 11:33
Интересующийся
Отправить личное сообщение для jess23 Посмотреть профиль Найти все сообщения от jess23
 
Регистрация: 03.09.2015
Сообщений: 10

Спасибо!

Вкратце поделюсь, пилил модуль для opencart, мне нужно было чтобы в поле select каждая опция выводила изображения при наведении на нее, а сама картинка привязалась к курсору, обычными средством css не решить задачу, а вот js это то что нужно в итоге присвоил имя класса в нужном месте, все заработало.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Появление ссылки при наведении мыши nikolaymac jQuery 1 05.09.2013 15:32
Помогите с небольшим эффектом на JS. При наведении курсора.. bayanruby Элементы интерфейса 10 27.05.2012 02:44
Менять цвет фона select option при наведении Dmitriykh Элементы интерфейса 3 25.07.2011 13:04
Как сделать, чтобы при наведении на кнопку справа от нее появлялись текстовые ссылки? Tass Общие вопросы Javascript 7 17.02.2011 09:06
Изменение цвета ячейки в таблице, при наведении на строку другой таблицы Psychosonic Общие вопросы Javascript 12 24.11.2010 16:44