Не работает связка .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, время: 10:11. |