Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Еще элегантнее (https://javascript.ru/forum/jquery/19075-eshhe-ehlegantnee.html)

Armen 25.07.2011 16:25

Еще элегантнее
 
Код хтмл
<div id="header-r1">
        <div id="left-r1">
            <h1 id="title-r1">This course contains<br /> the following topics:</h1>
            <hr id="line-r1" />
            <div id="allList-r1">
            	<div id="playDiv-r1">
                	<span id="playSpan-r1"></span>
                </div>
                <ul id="lists-r1">
                    <li class="list-r1">Alcohol And Drugs</li>
                    <li class="list-r1">Becoming Familiar With Your Vehicle</li>
                    <li class="list-r1">Defensive Driving Techniques</li>
                    <li class="list-r1">Driving In Bad Weather</li>
                    <li class="list-r1">Driving Privileges</li>
                    <li class="list-r1">Laws And Rules Of The Road</li>
                    <li class="list-r1">Road Rage</li>
                    <li class="list-r1">Seat Belts</li>
                    <li class="list-r1">Sharing The Road</li>
                    <li class="list-r1">Signs, Signals, and Markings</li>
                    <li class="list-r1">Space Management</li>                
                </ul>
			</div> <!-- end #allList-r1 -->               
        </div> <!-- end #left-r1 -->
        <div id="right-r1">
            <img src="images/img.jpg" height="400" width="540" />
        </div> <!-- end right-r1-->
    </div> <!-- end #header-r1 -->

Код js
jQuery(function()
{
	$.pushCoords = function ()
	{		
		var timeDelay = 800;
		var timeSpeed = 1500;
		var timeOpacity = 200;
		
		var arrCoords = [];
		
		$('.list-r1').each(function()
		{
			var obj = $(this).position();
			var msg = obj.top;			
			arrCoords.push(msg);
		})
		
		$.each(arrCoords, function()
		{
			var coord = this;
			var paddingLi = $(".list-r1").css("padding-top");
			var paddingPlay = $('#playDiv-r1').css({top: paddingLi})
			
			$('#playDiv-r1').animate({top: coord}, timeSpeed).delay(timeDelay);		
			//alert(coord);			
		})	
		$('#playDiv-r1').animate({opacity: "0"}, timeOpacity);
	}
	$.pushCoords()		
});

Можно ли данное решение сделать еще ЭЛЕГАНТНЕЕ(как любят выражаться программисты) ?
Подскажите пожалуйста, как и почему
Спасибо

melky 25.07.2011 16:35

убери jquery

вуаля!

kobezzza 25.07.2011 16:37

Цитата:

Сообщение от melky (Сообщение 115318)
убери jquery

вуаля!

:D

Armen 25.07.2011 16:39

И все ? :)

melky 25.07.2011 16:53

да

:)

Armen 25.07.2011 16:54

Цитата:

Сообщение от melky (Сообщение 115323)
да

:)

Вы имеете в виду, в начале , строку jQuery(function() поменять на $(function() ,я правильно вас понял ?

melky 25.07.2011 16:57

нет

написать без использования jquery.

Riim 25.07.2011 16:57

Цитата:

Сообщение от Armen
я правильно вас понял ?

нет, нужно совсем без jquery.

Armen 25.07.2011 17:03

В том, то и дело, что нужно с jQuery

melky 25.07.2011 17:15

не нужно ... это как с эвалем.. ( без него можно обойтись в 99% случаев )


Часовой пояс GMT +3, время: 16:12.