jQuery, вставляемый текст - PullRequest
2 голосов
/ 25 мая 2011

Я новичок в jQuery.Как я могу сделать текстовый слайд?Я попробовал это, и 1) это не работает, и 2) я мог бы предпочесть, чтобы это скользило в стороне

Ответы [ 8 ]

4 голосов
/ 25 мая 2011

Трудно сказать, что не так, без дополнительной информации, поскольку есть несколько возможных моментов, когда что-то может пойти не так.Вот некоторые возможности:

  1. Если элемент уже отображается, он не будет анимирован.
  2. Если в результате выбора jquery не будут выбраны какие-либо элементы, вы не увидитеничего тоже.Есть ли в вашем дереве DOM элемент с идентификатором 'someId'?

Вот пример использования slideDown:

<!DOCTYPE html>
<html lang="en">
   <head>
     <script src="jquery.js" type="text/javascript"></script>
     <script type="text/javascript">
         $(document).ready(
             function() {
                 $("#someId").hide();
                 $("#someId").html("hello").slideDown('slow');
         });
     </script>
  </head>
  <body>
      <div id="someId"></div>
  </body>
</html>
1 голос
/ 30 августа 2011

Это может хорошо работать.

$(".inner").mouseover(function(){
  $(".inner").animate({"marginLeft": "-=100px"}, "slow");
});

$(".inner").mouseout(function(){
  $(".inner").animate({"marginLeft": "+=100px"}, "slow");
});

Смотрите на работе здесь: http://jsfiddle.net/R4Xyd/5/

1 голос
/ 25 мая 2011

CSS:

#someId

{
    width:100px;
    margin-left:-100px;
}

jQuery

$('div').animate({marginLeft:"0"},1500);

Смотрите здесь http://jsfiddle.net/v8XFn/

1 голос
/ 25 мая 2011

1 - Возможно, его нужно заранее спрятать?т.е.:

#someId { display: none }

2 - Вы можете анимировать ширину контейнера.Поэтому, если ваш контейнер имеет нулевую ширину, анимируйте его до 250 пикселей по ширине (или как угодно).

$('#someId').animate({
    width: '250',
}, 5000, function() {
    // Animation complete.
});

http://api.jquery.com/animate/

1 голос
/ 25 мая 2011

Проверьте функцию анимации, она даст вам гораздо больше гибкости:

http://api.jquery.com/animate/

Вы захотите изменить поле или позицию х / у ... примерно так:

$('#someID').html("hello").animate({
  left: '+=50',
}, 1000, function() {
  // Animation complete.
});

Это означает, что #someID будет иметь анимацию, в которой положение элементов на оси x будет увеличено на 50 пикселей, и это произойдет в течение 1 секунды.

1 голос
/ 25 мая 2011
$("#someId").html("hello").show('slide');

Скрипка: http://jsfiddle.net/maniator/6LB8M/

0 голосов
/ 25 мая 2011

Получите плагин jQuery-easing и добавьте его в свой файл

<script src="script/jquery.easing.1.3.js" type="text/javascript"></script>
--and do this--
$('#yourDiv').delay(3000).effect('slide', { direction: "right" });
0 голосов
/ 25 мая 2011

Вы можете анимировать позицию.Вы должны получить что-то вроде этого:

html:

<p id="animated_text">text to be animated</p>

css:

p {
position: abosulte;
left: 0;
}

jquery:

$("#animated_text").animate({'left': '+=200'}, 1000);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...