Не работает связка .detach().appendTo
Написал скрипт, но он что-то не работает. Где-то закралась ошибка. Помогите пожалуйста найти. Я не очень силен в написании скриптов...
Скрипт делает следуюющее: При загрузке страницы содержимое <a></a> контейнера #contrez вырезается и помещается в переменную contPara. При нажатии кнопки #on_btn запускается функция onClick="init()" и содержимое переменной contPara вставляется в контейнер #cont, при повторном нажатии на кнопку - содержимое контейнера #cont вырезается и опять помещается в переменную contPara. Вот код скрипта: $( cutdiv ); function cutdiv() { var contPara = $('#contrez>a').detach();} var i = 0; function init() { var s = i; if (s == 0) { contPara.appendTo('#cont'); i++; $("#cont").show(1); $("#on_btn").attr("class", "onbtn_on"); $("#satus").attr("class", "satus_on"); } else { var contPara = $('#cont>a').detach(); i = 0; $("#cont").hide(1); $("#on_btn").attr("class", "onbtn_off"); $("#satus").attr("class", "satus_off"); } } |
Частично разобрался.
Надо переменную сделать глобальной, тоесть в строчках 3 и 14 убрать var. Заработало во всех браузерах, кроме Internet Explorer, в котором изначально содержимое <a></a> контейнера #contrez не вырезается почему-то. |
Ненавижу IE !!!
Чтобы не создавать новую тему еще спрошу.
Кто подскажет, как при скрытии блока в IE останавливать в нем выполнение мультимедии (напр. остановить воспроизведение плеера). В остальных браузерах таких проблем просто нет, при скрытии блока все элементы в нем перестают подавать какие-либо признаки жизнедеятельности. Но только не в IE !!! Вот ориентировочный код: сначала скрипт <script type='text/javascript'> $('#s1').click(function(){ if($("#p1").is(":hidden")){ $('.content').slideUp(300); $('#p1').slideDown(300); $("#p1").show(); }else{ $('#p1').slideUp(300);}}); </script> И собственно div с играющим плеером, которого нужно убить при скрытии блока: <div id="s1">текст</div> <div id="p1" class="content"> <object id="player"...><param...><param name='flashvars'...></object> </div> Добавление в конце скрипта $("#p1").hide(); в IE тоже ничего не дает... Мог бы - убил бы разработчиков Эксплорера !!! |
Часовой пояс GMT +3, время: 15:20. |