Удаление только атрибута позиции в jQuery

0

Я создал код, который имеет следующие черты:

  1. навигация Элементы-тексты - скрыты за некоторыми Divs, которые я буду называть их Navigation Divs

  2. когда мышь перемещается по некоторым пикселям-навигации Divs-, текст, который они находятся за этим, скользит вправо и влево, а в некоторых случаях некоторые из них перемещаются сверху и снизу около 15 px с помощью метода animate()...

  3. когда мышь переместится в другое Div, другой текст будет сброшен в первую позицию для следующего действия, и я сделал это с помощью:

    $(document).on('mouseover', '.pixel#p18', function(){
       $('.submenus').not("this Div TEXT").fadeOut('fast').removeAttr('style');
    });/* this Div Text is for Example*/
    

и я написал этот вид для всех моих навигационных текстов..

Теперь моя проблема:

  1. Когда я наводил указатель мыши на одну из разделов навигации, некоторые тексты, которые они не анимировали, становятся видимыми из-за removeAttr ('style') !!! Но я не хочу этого...

  2. есть ли альтернативный способ, которым я могу перемещать тексты или другие элементы влево, вправо, сверху и снизу с дополнительными значениями перемещения...??? например, 23px влево или 17px в начало... и т.д. - Я familiyar с slideUp и Down и переключается, но не уверен, что они достаточно хороши для моего кода...

  3. У вас есть лучшая идея для этого - то, что вы будете иметь, потому что я думаю, что это очень плохо

  4. и последний вопрос заключается в том, почему мои коды работают очень медленно? анимации, которые я написал, несколько раз лакировали, и я не уверен, что проблема - это мой селектор или другое.

Теги:

1 ответ

0

Для этого вам нужно что-то вроде.animate, у которого есть обратный вызов. Итак, что-то вроде:

$('.submenus').not("this Div TEXT").animate({opacity:0},500,'linear', function() {
    $(this).removeAttr('style');
});

Это приведет к удалению атрибута только после завершения анимации.

  • 1
    У fadeOut есть обратный вызов

Ещё вопросы

Сообщество Overcoder
Наверх
Меню