Javascript.RU

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

jquery marginTop
Здравствуйте, подскажите, пожалуйста. Есть функция. При клике на кнопке выполняет следующее действие $("#container_scr").animate({marginTop: "+=50px"},500);
Скажите, как правильно поставить условие на эту функцию, чтобы при достижении marginTop элемента 500px функция не срабатывала. В jquery не силен. Заранее спасибо.
Ответить с цитированием
  #2 (permalink)  
Старый 18.11.2013, 22:52
Аватар для mi.rafaylik
Кандидат Javascript-наук
Отправить личное сообщение для mi.rafaylik Посмотреть профиль Найти все сообщения от mi.rafaylik
 
Регистрация: 07.12.2012
Сообщений: 113

sanchous1,
Если можно установить margin-top через .animate, значит и получить его можно - через .css.
Посмотреть
$('#button').click(function() {
	var marg = parseInt($('#container_scr').css('marginTop'), 10);
	if (marg < 500) {
		$('#container_scr').animate({marginTop: '+=50px'}, 500);
	}
});

Последний раз редактировалось mi.rafaylik, 18.11.2013 в 23:13.
Ответить с цитированием
  #3 (permalink)  
Старый 18.11.2013, 23:11
Новичок на форуме
Отправить личное сообщение для sanchous1 Посмотреть профиль Найти все сообщения от sanchous1
 
Регистрация: 18.11.2013
Сообщений: 2

Огромное спасибо! Работает!
Ответить с цитированием
  #4 (permalink)  
Старый 18.11.2013, 23:43
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

Сообщение от sanchous1
при достижении marginTop элемента 500px функция не срабатывала.
если нужна точность ...
<!DOCTYPE HTML>
<html>

  <head>
    <style>
      #button {
        display:inline-block;
        cursor:pointer;
        background:#bbbbbb;
        padding:3px;
      }
      #container_scr {
        width:100px;
        height:100px;
        background:green;
      }
    </style>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js"></script>
    <script>
      $(document).ready(function () {
        $('#button').click(function () {
          var l = 500;
          $('#container_scr').animate({marginTop: "+=50px"},{step: function( x ) {if(x > l) $(this).stop().css({marginTop: l});
             },duration : 500 });

          })
        });

    </script>
  </head>

  <body>
    <div id="button">button</div>
    <div id="container_scr">element</div>
  </body>

</html>
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
хочу инвайт на хабр macdack Оффтопик 45 28.07.2013 23:18
Динамически загружаемая jQuery и jQuery-функции в одном файле 67bytes Общие вопросы Javascript 6 06.03.2013 09:01
Вопрос поддержки старых методов jQuery antonM jQuery 1 04.10.2012 00:08
2 разных модуля на jQuery - как подключить? finder jQuery 4 23.03.2012 22:29
jQuery jTreeMenu plugin Seafnox jQuery 9 12.01.2010 21:55