Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 16.04.2011, 12:32
Новичок на форуме
Отправить личное сообщение для anurkoja Посмотреть профиль Найти все сообщения от anurkoja
 
Регистрация: 16.03.2010
Сообщений: 3

перемещение дива с флеш плеером uppod
Тестовый скрипт: http://www.qamal.kz/audios2.php

Делаю контактоподобные аудиозаписи, т.е. кликнул на кнопку плей - под названием аудиозаписи появился плеер.
Плеер использую uppod.ru

Плеер на страницу подгружаю один, с плейлистом. Сначала пллер находится под первой аудиозаписью; под каждой другой аудиозаписью есть пустой див (место под плеер) со своим порядковым ид. По клику на кнопку play[$i] вставляю innerHTML дива, содержащего на данный момент плеер в div[$i], и очищаю же не нужный старый innerHTML.

Надеюсь, изложил понятно. Работает везде кроме ИЕ8 (в 7,6 даже не проверял ещё). В ие8 плеер переносится в нужное место, но плеер не получает параметры, поэтому вместо плеера отображается стандартная заставка.

Яваскрипт и пример по приведенному выше адресу.

Вопрос - с чем связано и как можно сделать иначе?

П.с. Конечно, можно не трогать див, содержащий пллер, а делать ремув и аппенд остальных дивов в списке, но будет мигание и скачки - яваскрипт ведь не моментально эти действия производит.
Ответить с цитированием
  #2 (permalink)  
Старый 16.04.2011, 12:46
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

Сообщение от anurkoja
Работает везде кроме ИЕ8
странно-везде не должно
глянул на твой код после переноса и у тебя все параметры оказались в двойных кавычках
innerHTML=" 'содержимое 1' 'содержимое 2'......";

замени все двойные кавычки в описании плеера в теге объект на одинарные

Последний раз редактировалось dmitriymar, 16.04.2011 в 13:08.
Ответить с цитированием
  #3 (permalink)  
Старый 16.04.2011, 13:11
Новичок на форуме
Отправить личное сообщение для anurkoja Посмотреть профиль Найти все сообщения от anurkoja
 
Регистрация: 16.03.2010
Сообщений: 3

Сообщение от dmitriymar Посмотреть сообщение
странно-везде не должно
глянул на твой код после переноса и у тебя все параметры оказались в двойных кавычках-как такое возможно?
innerHTML=" 'содержимое 1' 'содержимое 2'......";

замени все двойные кавычки в описании плеера в теге объект на одинарные
Честно говоря, не понял.
Работает в ФФ,Опере,Хроме.
Поменял двойные на одинарные - то же самое.

Плейлист и плеер формируются так:

$playlistaj='{"playlist":[';
	for ( $i = 0; $i <= $j1; $i ++ ){
		$playlistaj_comment[$i] = ($i+1).'. '.str_replace("'", "", $audio['songer'][$i]).' - '.str_replace("'", "", $audio['name'][$i]);	
		$playlistaj.='{"file":"audios/'.$audio['link'][$i].'","comment":"'.$playlistaj_comment[$i].'"},';
	}
	$playlistaj=substr($playlistaj,0,strlen($playlistaj)-1);
	$playlistaj.=']}';
	$playlistaj=str_replace('&','',$playlistaj);


<script type="text/javascript">
	var flashvars = {'st':'/player/audio1.txt','m':'audio','file':'http://qamal.kz/audios/<?=$audio['link'][0];?>','uid':'player_main','pl':'<?=$playlistaj?>'};
	var params = {id:'player_main', bgcolor:'#ffffff', wmode:'transparent', allowFullScreen:'true', allowScriptAccess:'always'};
	new swfobject.embedSWF('http://qamal.kz/player/uppod.swf', 'player_main', '598', '50', '9.4.10.4', false, flashvars, params);

	</script>


Можно пожалуйста подробнее?
Ответить с цитированием
  #4 (permalink)  
Старый 16.04.2011, 13:24
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

я с джиквери не дружу.но посмотри сам через фаирбаг что у тебя происходит. при первом появлении у тебя в контейнере описание плеера в теге объект- в двойных кавычках описание параметров.и затем ты это переносишь в другой контейнер. присвой содержимое контейнера строке и просмотри её при переносе сам всё увидишь
попробуй присвоить строке чтото типа такого
строка ="данное1"значение"данное2"з-ние"...."
и ничего не выйдет поскольку присваиваемая строка содержит в себе двойные кавычки

скриптом ты создаёшь содержимое 1 контейнера-и переносишь через innerHTML тоже содержимое,но в твоём содержимом есть двойные кавычки-вот и глючит

Последний раз редактировалось dmitriymar, 16.04.2011 в 13:39.
Ответить с цитированием
  #5 (permalink)  
Старый 26.04.2011, 11:45
Профессор
Отправить личное сообщение для Маэстро Посмотреть профиль Найти все сообщения от Маэстро
 
Регистрация: 02.07.2010
Сообщений: 642

Сообщение от anurkoja
В ие8 плеер переносится в нужное место
А зачем его "переносить" из старого места в новое? Имею ввиду не сам визуальный эффект, а перенос HTML-кода? Просто на старом месте убивайте innerHTML, а на новом формируйте его на лету, в том числе и URL-параметр для Flash Player_a.
P.S. некоторые плееры могут принимать в качестве параметра URL-файла уже после вставки в страницу и даже в процессе воспроизведения. Могут принимать и команды Play/Stop - это javascript-управляемые плееры.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перемещение одного дива в другом. AlexNiko Элементы интерфейса 1 02.12.2009 18:18