Всем привет! Сейчас я хочу вам предоставить один интересный скрипт для изображений на сайтах uCoz. работа данного скрипта заключается в том что вы при наведение на изображение курсором вся область сайта становится затемнённой кроме самого изображения.
После того как вся область сайта затемняется на изображение появляется кнопка увеличить изображения что вы собственно и будете делать. Далее изображение увеличивается и вся область кроме изображения остаётся затемнённой до того пока вы не нажмёте на иконку в виде крестика для закрытия изображения.
После того как я вам немного описал его я хочу показать как установить его к себе на сайт.
Установка:
HTML
Для того что бы скрипт работал нужно прописать в коде который выводит само изображение class и alt
Вот так!
Код <img src="$IMG_URL1$" alt="$IMG_URL1$" class="ih_image">
class у нас отвечает за дизайн самой картинки а с помощью alt у нас и будет изображения увеличиваться. Теперь вставьте данный код в то место где вы будете выводить изображения.
Далее на этой же странице после кода
Вам следует прописать вот этот
Код <div id="ih_overlay" class="ih_overlay" style="display:none;">
Этот код отвечает за само затемнение на сайте.
Когда я тестировал я сделал вот так
Код <img src="$IMG_URL1$" alt="$IMG_URL1$" class="ih_image"> $MESSAGE$ <div id="ih_overlay" class="ih_overlay" style="display:none;">
И у меня всё работало на отлично.
CSS
Вторым действием вам нужно прописать стили для настройки изображения ведь мы прописали class а теперь к classu нам нужно прописать стили и для этого скопируйте стили и вставьте в самый низ стилей вашего сайта и сохраните.
Код .ih_overlay{ position:fixed; top:0px; left:0px; right:0px; bottom:0px; background:#000; opacity:0.9;
z-index:10; } img.ih_image{ margin-top:10px; margin-bottom:10px; position:relative; cursor:pointer; opacity:0.7; -moz-box-shadow:1px 1px 4px #000; -webkit-box-shadow:1px 1px 4px #000; box-shadow:1px 1px 4px #000; } .ih_image_clone_wrap{ position:absolute; z-index:11; } .ih_image_clone_wrap span.ih_zoom, .ih_image_clone_wrap span.ih_loading, .ih_image_clone_wrap span.ih_close{ position:absolute; top:10px; right:10px; width:24px; height:24px; text-indent:-9000px; -moz-border-radius:6px; -webkit-border-radius:6px; border-radius:6px; opacity:0.8; cursor:pointer; -moz-box-shadow:1px 1px 2px #000; -webkit-box-shadow:1px 1px 2px #000; box-shadow:1px 1px 2px #000; } .ih_image_clone_wrap span.ih_zoom{ background:#000 url(../icons/zoom.png) no-repeat center center; } .ih_image_clone_wrap span.ih_loading{ background:#000 url(../icons/loader.gif) no-repeat center center; } .ih_image_clone_wrap span.ih_close{ background:#000 url(../icons/close.png) no-repeat center center; } .ih_image_clone_wrap img{ opacity:0.7; -moz-box-shadow:1px 1px 10px #000; -webkit-box-shadow:1px 1px 10px #000; box-shadow:1px 1px 10px #000; } .ih_image_clone_wrap img.preview{ opacity:1; position:absolute; top:0px; left:0px; } .ih_overlay{ position:fixed; top:0px; left:0px; right:0px; bottom:0px; background:#000; z-index:10; opacity:0.9; filter:progid:DXImageTransform.Microsoft.Alpha(opacity=90); } img.ih_image{ margin:10px 0px; position:relative; -moz-box-shadow:1px 1px 4px #000; -webkit-box-shadow:1px 1px 4px #000; box-shadow:1px 1px 4px #000; opacity:0.7; filter:progid:DXImageTransform.Microsoft.Alpha(opacity=70); } .ih_image_clone_wrap{ position:absolute; z-index:11; } .ih_image_clone_wrap span.ih_zoom, .ih_image_clone_wrap span.ih_loading, .ih_image_clone_wrap span.ih_close{ position:absolute; top:10px; right:10px; width:24px; height:24px; text-indent:-9000px; -moz-border-radius:6px; -webkit-border-radius:6px; border-radius:6px; opacity:0.8; cursor:pointer; -moz-box-shadow:1px 1px 2px #000; -webkit-box-shadow:1px 1px 2px #000; box-shadow:1px 1px 2px #000; z-index:999; filter:progid:DXImageTransform.Microsoft.Alpha(opacity=80); } .ih_image_clone_wrap span.ih_zoom{ background:#000 url(../icons/zoom.png) no-repeat center center; } .ih_image_clone_wrap span.ih_loading{ background:#000 url(../icons/loader.gif) no-repeat center center; } .ih_image_clone_wrap span.ih_close{ background:#000 url(../icons/close.png) no-repeat center center; } .ih_image_clone_wrap img{ opacity:0.7; -moz-box-shadow:1px 1px 10px #000; -webkit-box-shadow:1px 1px 10px #000; box-shadow:1px 1px 10px #000; filter:progid:DXImageTransform.Microsoft.Alpha(opacity=70); } .ih_image_clone_wrap img.ih_preview{ opacity:1; position:absolute; top:0px; left:0px; }
javascript
Теперь мы перейдём к установки скрипта который отвечает за увеличения картинки, для этого скопируйте скрипт который расположен ниже и вставьте в верхнюю или нижнюю часть вашего сайта .
Код <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> <script type="text/javascript"> $(function() { /** * timeout to control the display of the overlay/highlight */ var highlight_timeout;
/** * user hovers one image: * create a absolute div with the same image inside, * and append it to the body */ $('img.ih_image').bind('mouseenter',function () { var $thumb = $(this); var $clone = $('<div />',{ 'id' : 'ih_clone', 'className': 'ih_image_clone_wrap', 'html' : '<img src="'+$thumb.attr('src')+'" alt="'+$thumb.attr('alt')+'"/><span class="ih_zoom"></span>', 'style' : 'top:'+$thumb.offset().top+'px;left:'+$thumb.offset().left+'px;' }); var highlight = function (){ $('#ih_overlay').show(); $('BODY').append($clone); } //show it after some time ... highlight_timeout = setTimeout(highlight,700);
/** * when we click on the zoom, * we display the image in the center of the window, * and enlarge it to the size of the real image, * fading this one in, after the animation is over. */ $clone.find('.ih_zoom').bind('click',function(){ var $zoom = $(this); $zoom.addClass('ih_loading').removeClass('ih_zoom'); var imgL_source = $thumb.attr('alt'); $('<img class="ih_preview" style="display:none;"/>').load(function(){ var $imgL = $(this); $zoom.hide(); var windowW = $(window).width(); var windowH = $(window).height(); var windowS = $(window).scrollTop(); $clone.append($imgL).animate({ 'top' : windowH/2 + windowS + 'px', 'left' : windowW/2 + 'px', 'margin-left' : -$thumb.width()/2 + 'px', 'margin-top' : -$thumb.height()/2 + 'px' },400,function(){ var $clone = $(this); var largeW = $imgL.width(); var largeH = $imgL.height(); $clone.animate({ 'top' : windowH/2 + windowS + 'px', 'left' : windowW/2 + 'px', 'margin-left' : -largeW/2 + 'px', 'margin-top' : -largeH/2 + 'px', 'width' : largeW + 'px', 'height' : largeH + 'px' },400).find('img:first').animate({ 'width' : largeW + 'px', 'height' : largeH + 'px' },400,function(){ var $thumb = $(this); /** * fade in the large image. Replace the zoom with a cross, * so the user can close the preview mode */ $imgL.fadeIn(function(){ $zoom.addClass('ih_close').removeClass('ih_loading').fadeIn(function(){ $(this).bind('click',function(){ $clone.remove(); clearTimeout(highlight_timeout); $('#ih_overlay').hide(); }); }); $thumb.remove(); }); }); }); }).error(function(){ /** * error loading image. Maybe show a message : 'no preview available'? */ $zoom.fadeOut(); }).attr('src',imgL_source); }); }).bind('mouseleave',function(){ /** * the user moves the mouse out of an image. * if there's no clone yet, clear the timeout * (user was probably scolling through the article, and * doesn't want to view the image) */ if($('#ih_clone').length) return; clearTimeout(highlight_timeout); }); /** * the user moves the mouse out of the clone. * if we don't have yet the cross option to close the preview, then * clear the timeout */ $('#ih_clone').live('mouseleave',function() { var $clone = $('#ih_clone'); if(!$clone.find('.ih_preview').length){ $clone.remove(); clearTimeout(highlight_timeout); $('#ih_overlay').hide(); } }); }); </script>
Вот теперь после того как вы все скрипты и стили установили вам остаётся скачать архив и загрузить папку icons в файловый менеджер вашего сайта.
На этом установка скрипта окончена! Я рад если вам это пригодилось
|