Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 28.06.2012, 08:46
Новичок на форуме
Отправить личное сообщение для sash_ok.83 Посмотреть профиль Найти все сообщения от sash_ok.83
 
Регистрация: 06.03.2012
Сообщений: 2

Плавное увеличение картинки
(На страничке ) поставил с помощью jquery плавное увеличение картинок.

Когда картинка одна , увеличение идет относительно правого верхнего угла.

А если картинки идут в ряд, то первая увеличивается относительно своего правого верхнего угла, а остальные "теряют ориентацию".

Подскажите пожалуйста в чем может быть проблема.
Ответить с цитированием
  #2 (permalink)  
Старый 28.06.2012, 10:46
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

<body style="padding-top:45px;">


<script type="text/javascript" src="http://yandex.st/jquery/1.4.4/jquery.min.js"></script>
<style>
table.prev {
width:0;
border-collapse:collapse;
border:solid 1px transparent;
}
table.prev td{
padding:0 4px;
}
.tryam{
border:solid 3px #fff!important;
}
.Myimg {
text-align:center;
border:solid 4px #fff!important;
border-bottom-width:6px!important;
background-color: #D6C59B;
width:100px;
position:absolute;
display:none;
z-index:100;
margin-top:-100px;
margin-left:-30px;


    box-shadow: 0px 2px 8px #7C7259;
    -webkit-box-shadow:0px 2px 8px #7C7259;
    -khtml-box-shadow:0px 2px 8px #7C7259;
    -moz-box-shadow:0px 2px 8px #7C7259;
    }
}
#ObrmlTable{
 padding:34px;
}
</style>
<center><div id=ObrmlTable>
<table class=prev><tr>
<td><img class="tryam" src="http://uploads.ru/i/Y/W/j/YWjoh.png" width="60"/><div class="Myimg" style="display:none;"><img  src="http://uploads.ru/i/Y/W/j/YWjoh.png" style="width:100%;"/></div></td>
<td><img class="tryam" src="http://uploads.ru/i/Y/W/j/YWjoh.png" width="60"/><div class="Myimg" style="display:none;"><img  src="http://uploads.ru/i/Y/W/j/YWjoh.png" style="width:100%;"/></div></td>
<td><img class="tryam" src="http://uploads.ru/i/Y/W/j/YWjoh.png" width="60"/><div class="Myimg" style="display:none;"><img  src="http://uploads.ru/i/Y/W/j/YWjoh.png" style="width:100%;"/></div></td>
</tr></table></div></center>
<!--Увеличилка картинок по наведению-->
<script type="text/javascript">
  $(document).ready(function(){
$('table.prev .Myimg').each(function (i){
  $(this).attr("alt",i)
});
  $('img.tryam').mouseover(function(){
  var a=$(this).parent().children('.Myimg').attr("alt")
    $('table.prev .Show').each(function (){
       if($(this).attr("alt")!=a)$(this).removeClass('Show').hide('slow');
    });
      $(this).parent().children('.Myimg').addClass('Show').show('slow');
    }).mouseout(function(){
    });
  $('.Myimg img').mouseover(function(){
    }).mouseout(function(){
      $(this).parent('.Myimg').removeClass('Show').hide('slow');
    });
  });
</script>


Ps:
(*Значения
.Myimg {
margin-left: -30px;
margin-top: -100px;

В общем случае зависят и от центрирования и размеров картинки( приведённые выше цифры были для картинки центрированной по левому краю - так что при первых неудачах в центрировании большой картинки - не огорчаемся - а подбираем цифру

Последний раз редактировалось Deff, 28.06.2012 в 11:07.
Ответить с цитированием
  #3 (permalink)  
Старый 30.06.2012, 12:22
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

<div id="div1">
  <img 

src="http://legal2b.ru/bitrix/templates/legal2b_second/images/articles/registration/limited_01_small.jpg">
  <img 

src="http://legal2b.ru/bitrix/templates/legal2b_second/images/articles/registration/limited_02_small.jpg">
  <img 

src="http://legal2b.ru/bitrix/templates/legal2b_second/images/articles/registration/limited_03_small.jpg">
</div>

<div id="div2" style="position: relative">
</div>

<script>
window.onload = function () {//onload begin
  var div1 = document.getElementById('div1');
  var div2 = document.getElementById('div2');

  div1.onmouseover = function (e) {//onmouseover begin
    e = e || event;
    var target = e.target || e.srcElement;
    var count = 457;
    var step = 6;
    var coof = 1;

    if (target.parentNode == div1) {//if begin
      var img = document.createElement('img');
      img.src = target.src.replace('small', 'big');
      img.style.position = 'absolute';
      img.style.left = '0px';
      img.style.top = '0px';
      div2.appendChild(img);
      img.width = 0;

      for (var i = 0; i < count; i += step) {
        setTimeout(function () {img.width += step}, i*coof);
      }

      target.onmouseout = function () {
        for (var i = 0; i < count; i += step) {
        setTimeout(function () {img.width -= step; if (img.width <= 0) div2.removeChild(img)}, i*coof);
        }
      }

    }//if end

  }//onmouseover end
  
}//onload end
</script>

Последний раз редактировалось bes, 30.06.2012 в 12:30.
Ответить с цитированием
Ответ


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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Плавное увеличение картинки begin Общие вопросы Javascript 6 30.01.2012 22:33
увеличение картинки при наведении мышкой Sereban jQuery 10 31.08.2011 14:50
плавное появление картинки marlic Элементы интерфейса 1 12.03.2011 15:36
увеличение картинки по клику highslide terveg Общие вопросы Javascript 1 16.11.2010 14:39
Увеличение картинки при наведение Axenic Элементы интерфейса 2 05.06.2009 12:00