Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: поменять местами кнопки
Форумы портала PHP.SU » Клиентская разработка » JavaScript & VBScript » поменять местами кнопки

Страниц (1): [1]
 

1. alexiy - 13 Декабря, 2012 - 13:52:02 - перейти к сообщению
есть
CODE (html):
скопировать код в буфер обмена
  1.  
  2. <input type = "button" value = "1">
  3. <input type = "button" value = "2">
  4. <input type = "button" value = "3">
  5.  

необходимо при нажатии на любую из кнопок, поменять кнопки местами в порядке 2,1,3 потом при нажатии на любую из кнопоко порядок должен быть 3,2,1
как это можно реализовать используя JQuery?
2. armancho7777777 - 13 Декабря, 2012 - 14:22:15 - перейти к сообщению
CODE (javascript):
скопировать код в буфер обмена
  1. $(function(){
  2.  
  3.   $('input:button').click(function(e) {
  4.  
  5.     $(this).parent().prepend($(this));
  6.        
  7.   });
  8.    
  9. });

CODE (html):
скопировать код в буфер обмена
  1. <div>
  2.   <input type="button" value="1">
  3.   <input type="button" value="2">
  4.   <input type="button" value="3">
  5. </div>
3. DelphinPRO - 13 Декабря, 2012 - 14:33:36 - перейти к сообщению
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. $(this)                       // берем кнопку, которую нажали
  3. .siblings('input[type=button]') // ищем все соседние кнопки
  4. .last()                 // из полученного набора берем последний элемент
  5. .prependTo(             // и перемещаем его на первое место
  6.     $(this).parent()    // у родительского элемента
  7. );
4. IllusionMH - 13 Декабря, 2012 - 14:39:04 - перейти к сообщению
alexiy, вы порядок и какие кнопуки уточните, а то тут уже вариантов куча, а то с первого взгляда непонятно, кто и куда должен двигаться.
мой всегда двигает последнюю вначало (и совсем не оптимально написано(()
CODE (javascript):
скопировать код в буфер обмена
  1. $('input').on("click", function() {
  2.     $(this).parent().children().last().prependTo($(this).parent());
  3. });

выше предложено перемещение элемента по которому кликнули в начало и перемещение последнего из соседей(если кликать по последнему элементу, то он двигаться не будет)
5. alexiy - 23 Декабря, 2012 - 13:41:28 - перейти к сообщению
IllusionMH
поясняю:
CODE (html):
скопировать код в буфер обмена
  1.  
  2. <input type = "button" value = "1"><br>
  3. <input type = "button" value = "2"><br>
  4. <input type = "button" value = "3"><br>
  5.  

нажали на любу кнопку порядок стал таким
CODE (html):
скопировать код в буфер обмена
  1.  
  2. <input type = "button" value = "2"><br>
  3. <input type = "button" value = "3"><br>
  4. <input type = "button" value = "1"><br>
  5.  

нажали еще раз
CODE (html):
скопировать код в буфер обмена
  1.  
  2. <input type = "button" value = "3"><br>
  3. <input type = "button" value = "1"><br>
  4. <input type = "button" value = "2"><br>
  5.  

еще раз нажали
CODE (html):
скопировать код в буфер обмена
  1.  
  2. <input type = "button" value = "1"><br>
  3. <input type = "button" value = "2"><br>
  4. <input type = "button" value = "3"><br>
  5.  
6. armancho7777777 - 23 Декабря, 2012 - 13:52:57 - перейти к сообщению
Не прошло и года )
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. $(function(){
  3.    
  4.         var btns = $('input:button'),
  5.             btnsParent = btns.parent();
  6.        
  7.         btns.click(function(e) {
  8.                 btnsParent.append(
  9.                         btnsParent.find(':button').first()
  10.                 );
  11.         });
  12. });
  13.  

CODE (html):
скопировать код в буфер обмена
  1.  
  2. <div>
  3.   <input type="button" value="1">
  4.   <input type="button" value="2">
  5.   <input type="button" value="3">
  6. </div>
  7.  
7. IllusionMH - 23 Декабря, 2012 - 15:41:12 - перейти к сообщению
alexiy, а посмотрите на варианты в первом посте, они отличаются.
А теперь всегда выполняется сдвиг первого элемента в конец (вот так и стоило написать сразу, а не неправильные последовательности).
8. armancho7777777 - 23 Декабря, 2012 - 15:45:33 - перейти к сообщению
IllusionMH, то, что Вы ему написали, но наоборот )
А ТС разбираться не любит: запустил, результат не тот, обратно на форум)

 

Powered by ExBB FM 1.0 RC1