Форум программистов, компьютерный форум, киберфорум
Наши страницы
jQuery
Войти
Регистрация
Восстановить пароль
 
bb_oo
15 / 15 / 9
Регистрация: 22.11.2013
Сообщений: 762
#1

При наведении не появляется ярлычок над пунктом меню - jQuery

10.12.2013, 20:18. Просмотров 225. Ответов 0
Метки нет (Все метки)

В общем проблемка - Взял меню с сайта и не корректно отображается меню( Конкретнее - при наведении не появляется ярлычок над пунктом меню. Как я понял проблемка - в JS! Js:

Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
/**
 * @author Alexander Farkas
 * v. 1.21
 */
 
 
(function($) {
    if(!document.defaultView || !document.defaultView.getComputedStyle){ // IE6-IE8
        var oldCurCSS = jQuery.curCSS;
        jQuery.curCSS = function(elem, name, force){
            if(name === 'background-position'){
                name = 'backgroundPosition';
            }
            if(name !== 'backgroundPosition' || !elem.currentStyle || elem.currentStyle[ name ]){
                return oldCurCSS.apply(this, arguments);
            }
            var style = elem.style;
            if ( !force && style && style[ name ] ){
                return style[ name ];
            }
            return oldCurCSS(elem, 'backgroundPositionX', force) +' '+ oldCurCSS(elem, 'backgroundPositionY', force);
        };
    }
    
    var oldAnim = $.fn.animate;
    $.fn.animate = function(prop){
        if('background-position' in prop){
            prop.backgroundPosition = prop['background-position'];
            delete prop['background-position'];
        }
        if('backgroundPosition' in prop){
            prop.backgroundPosition = '('+ prop.backgroundPosition;
        }
        return oldAnim.apply(this, arguments);
    };
    
    function toArray(strg){
        strg = strg.replace(/left|top/g,'0px');
        strg = strg.replace(/right|bottom/g,'100%');
        strg = strg.replace(/([0-9\.]+)(\s|\)|$)/g,"$1px$2");
        var res = strg.match(/(-?[0-9\.]+)(px|\%|em|pt)\s(-?[0-9\.]+)(px|\%|em|pt)/);
        return [parseFloat(res[1],10),res[2],parseFloat(res[3],10),res[4]];
    }
    
    $.fx.step. backgroundPosition = function(fx) {
        if (!fx.bgPosReady) {
            var start = $.curCSS(fx.elem,'backgroundPosition');
            
            if(!start){//FF2 no inline-style fallback
                start = '0px 0px';
            }
            
            start = toArray(start);
            
            fx.start = [start[0],start[2]];
            
            var end = toArray(fx.options.curAnim.backgroundPosition);
            fx.end = [end[0],end[2]];
            
            fx.unit = [end[1],end[3]];
            fx.bgPosReady = true;
        }
        //return;
        var nowPosX = [];
        nowPosX[0] = ((fx.end[0] - fx.start[0]) * fx.pos) + fx.start[0] + fx.unit[0];
        nowPosX[1] = ((fx.end[1] - fx.start[1]) * fx.pos) + fx.start[1] + fx.unit[1];           
        fx.elem.style.backgroundPosition = nowPosX[0]+' '+nowPosX[1];
 
    };
})(jQuery);
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
$(document).ready(function() {
    $("ul#nav li a").addClass("js");
    $("ul#nav li a").hover(
      function () {
        $(this).stop(true,true).animate({backgroundPosition:"(0 0)"}, 200);
        $(this).animate({backgroundPosition:"(0 -5px)"}, 150);
      }, 
      function () {
        $(this).animate({backgroundPosition:"(0 -149px)"}, 200);
 
      }
    );
 
});
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.12.2013, 20:18
Я подобрал для вас темы с готовыми решениями и ответами на вопрос При наведении не появляется ярлычок над пунктом меню (jQuery):

Меню не полностью показывается при частом наведении на это меню
Имеется выпадающее меню ul > li, показываемое с помощью .slideDown/.slideUp....

При наведении курсора на определённую позицию в заказе появляется всплывающая подсказка (по позиции)
В скрипте информация представляется в иерархической структуре (контракт – цех...

В задании при наведении курсора мыши на названии животного, в ячейке таблицы появляется рисунок этого животног
В задании при наведении курсора мыши на названии животного, в ячейке таблицы...

Всплывающее меню при наведении
Хочу в плагин fancybox впоять код, что бы при наведении курсора мыши на...

При наведении пропадает меню
Здравствуйте. Перейду сразу к проблеме. Нашёл вот тему для wordpress, но у...

Раскрытие меню при наведении
привет. есть простое горизонтальное меню, подпункты раскрываются при наведении...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.12.2013, 20:18
Привет! Вот еще темы с решениями:

Анимация картинки при наведении меню
Всем привет!Вот уже второй день мучаюсь: Как сделать чтобы при наведении на...

Раскрытие вертикального меню при наведении
Добрый день! У меня имеется скрипт, который при наведении раскрывает...

Смена контента при наведении курсора на меню
Добрый день, уважаемые знатоки :) В процессе работы возникла такая проблема,...

Меню с выпадающим DIV при наведении мыши
Здравствуйте, ребята! Помогите понять как правильно сделать. Есть пункты меню....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru