Форум программистов, компьютерный форум, киберфорум
jQuery
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
138 / 6 / 5
Регистрация: 16.02.2016
Сообщений: 35
1

Функция перестает работать после замены href

10.10.2018, 03:43. Показов 546. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго времени суток!
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
71
72
73
74
75
76
77
78
79
80
81
82
$( document ).ready(function() {
 
var txtZeroID = "#rec70014772";
 
var open = false;
var close = true;
var resize = false;
$('[href = "#long"]').addClass('activebtn');
 
function allUp(){
 
   if (!resize){
    $("[href='#stepsleft2']").parent(".tn-elem").animate({ top: '-=80' }, 1000); 
    $("[href='#stepsleft3']").parent(".tn-elem").animate({ top: '-=160' }, 1000);
    $("[href='#stepsleft4']").parent(".tn-elem").animate({ top: '-=240'}, 1000);
    $("[href='#stepsright6']").parent(".tn-elem").animate({ top: '-=80' }, 1000); 
    $("[href='#stepsright7']").parent(".tn-elem").animate({ top: '-=160'}, 1000); 
    $("[href='#stepsright8']").parent(".tn-elem").animate({ top: '-=240'}, 1000); 
 
    $("[href='#myline']").parent(".tn-elem").animate({
    height : '-=270',   }, 1000, function() {   });
   } else {resize = false;};
 
   $(""+txtZeroID+" .t396__artboard , "+txtZeroID+" .t396__carrier ,  "+txtZeroID+" .t396__filter").animate({ height : '-=260px' }, 1000);
 
 
    $('[href = "#txtleft"]').removeClass("showtxt");
 
    $('[href = "#txtright"]').removeClass("showtxt");
 
    close = true;open = false; 
};   
 
 
function allDown(){
    $("[href='#stepsleft2']").parent(".tn-elem").animate({ top: '+=80' }, 1000); 
    $("[href='#stepsleft3']").parent(".tn-elem").animate({ top: '+=160' }, 1000);
    $("[href='#stepsleft4']").parent(".tn-elem").animate({ top: '+=240' }, 1000);
    $("[href='#stepsright6']").parent(".tn-elem").animate({ top: '+=80' }, 1000);
    $("[href='#stepsright7']").parent(".tn-elem").animate({ top: '+=160' }, 1000);
    $("[href='#stepsright8']").parent(".tn-elem").animate({ top: '+=240' }, 1000); 
 
    $("[href='#myline']").parent(".tn-elem").animate({ height : '+=270' }, 1000);
    
 
   $(""+txtZeroID+" .t396__artboard , "+txtZeroID+" .t396__carrier ,  "+txtZeroID+" .t396__filter").animate({height : '+=260px'}, 1000);
 
 
    $('[href = "#txtleft"]').addClass("showtxt");
 
    $('[href = "#txtright"]').addClass("showtxt");
 
    open = true;close = false;
};   
 
     $('[href = "#long"]').click(function (){
         $("[href='#long']").attr('href', '#short')
 if (close){ allDown()};
 
 
});
 
 $('[href = "#short"]').click(function (){
         $("[href='#short']").attr('href', '#long')
   
 if (open){ allUp()}; 
 
 
 });
 
 
var resizeTimeout;
$(window).resize(function(){
    clearTimeout(resizeTimeout);
    resizeTimeout = setTimeout(function(){    
          if (!close){ 
   resize = true;
   setTimeout(function() { 
    $("[href = '#short']")[0].click(); 
}, 500); };  }, 500);});
 
});
Скрипт просто разворачивает информацию при нажатии на кнопку. Когда было 2 кнопки, скрипт прекрасно работал, решил упростить скрипт, упрознил 1 кнопку и теперь при клике у нее меняется href, однако после смены href скрипт перестает работать и не сворачивает информацию обратно. Подскажите, в чем может быть дело?

Добавлено через 1 час 14 минут
Немного исправил этот кусок
Javascript
1
2
3
4
5
6
7
8
 $('[href = "#long"]').click(function (){
         $("[href='#long']").attr('href', '#short')
 if (close){ allDown()};
}); 
 $('[href = "#short"]').click(function (){
         $("[href='#short']").attr('href', '#long')   
 if (open){ allUp()};  
 });
Теперь Функция открывает и закрывает, но только один раз.
Javascript
1
2
3
4
5
6
7
8
9
10
11
$('[href = "#long"]').click(function (f){
$("[href='#long']").attr('href', '#short');
 if (close){ allDown();}
      f.stopPropagation();
 
$('[href = "#short"]').click(function (n){
           $("[href='#short']").attr('href', '#long');
     if (open){ allUp();}
     n.stopPropagation();
});
f.preventDefault();
К сожалению я совсем не знаком с циклами в jquery, подскажите, как сделать из этого цикл, который будет повторяться бесконечно, или как можно завершить эту функцию, чтобы после выполнения
Javascript
1
$('[href = "#short"]').click(function (n){
функция завершалась и при следующем нажатии использовалась повторно?

Добавлено через 5 часов 54 минуты
Решил проблему добавлением класса и проверкой его наличия.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.10.2018, 03:43
Ответы с готовыми решениями:

Почему после метода click перестает работать функция $(window).scroll(function(){.})
Здравствуйте! Почему после метода click(нажатие на ссылку) перестает работать функция ...

Перестаёт работать кнопка после замены
Когда меняю кнопку вместо обычной гиперссылки и ставлю задний фон для текста перестаёт реагировать...

OpenDialog - после открытия файла перестает работать функция copy()
Дело вот в чем. после открытия какого либо файла через opendialog у меня перестает работать...

Духовой шкаф Bosch HBC84K553/09 с встроенной СВЧ, после замены стекла перестает работать СВЧ
Коллеги, не первый раз оказываюсь в ситуации, после демонтажа двери для замены внутреннего стекла и...

0
10.10.2018, 03:43
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.10.2018, 03:43
Помогаю со студенческими работами здесь

После компиляции проекта в EXE файла функция EbExecuteLine перестает работать
Подскажите кто-нибудь почему после компиляции проекта в EXE файла функция EbExecuteLine перестает...

Почем функция val после 10 целых чисел перестает правильно работать
var a: string; v,x: integer; begin readln(a); {ввожу допустим 123456789101112 } repeat ...

После перезагрузки перестает работать буфер.
Привет. Вечером выключаю комп. На утро прихожу, включаю - буфер не работает. (не копируется не...

Перестает работать Wi-Fi после переустановки Windows 8.1
Здравствуйте, после установки windows 8.1 на ноутбук появились проблемы с WiFi. Подключается без...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru