Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Sound при наведение на link (https://javascript.ru/forum/misc/3846-sound-pri-navedenie-na-link.html)

nemo 28.05.2009 20:44

Sound при наведение на link
 
я хочу чтобы при наведение на определенную ссылку воспроизводлся звук.
как такое сделать, если реально без flash то очень прошу скажите как а если не то ска как сфлешь....:help:

x-yuri 29.05.2009 04:44

вопрос в чем?

twolf 29.05.2009 13:43

Цитата:

Сообщение от x-yuri (Сообщение 20340)
вопрос в чем?

не мешайте товарищу общаться :)

nemo 29.05.2009 16:03

x-yuri,
>в топик
плз помоги реализовать скрипт воспроизведения звука при наводке мышью на линк вот документация на один плагин jquery который я поставил на свой сайт

http://www.happyworm.com/jquery/jpla...oper-guide.htm

x-yuri 29.05.2009 16:52

так там же все написано, вот пример из документации
$(document).ready(function() {
  $("#jpId").jPlayer( {
    ready: function () {
	  $("#jpId").setFile("../mp3/elvis.mp3").play();
	},
	cssPrefix: "my_jp_class"} );
  });
});

nemo 29.05.2009 17:06

Цитата:

так там же все написано, вот пример из документации
я тоже первым делом увидел этот код и скопировал но неполучилось потом поробывал все переставить что там было написано щас остановился на дублировании страницы с рабочим плеером и потехоньку разобратся что и как, но спасибо)

x-yuri 29.05.2009 17:37

ну дай текущий код страницы (чтобы его можно было запустить) что ли и скажи, что у тебя там не работает

nemo 29.05.2009 17:51

мне нужно чтобы только при наведение этого линка воспроизводился звук а дальше пойму <a id="testsound" >soundtest</a>
ссылка назвук http://muzmax.ru/sounds/Sound1.mp3

x-yuri 29.05.2009 17:55

похоже, что
$("#jpId").setFile("../mp3/elvis.mp3").play();

воспроизводит указанный файл

что касается назначения обработчика для события click - оно делается с помощью одноименной функции

x-yuri 30.05.2009 04:35

помотри путь к флешке после того, как она вставлена на страницу либо прочитай внимательно описание параметров плагина
p.s. хотя они, конечно, "очевидно" сделали

nemo 30.05.2009 14:44

x-yuri,
сного спасибо, заработало
я действовал по инструкции и встовлял коды в <head></head> а uCoz встоваляет туда свой код сжатый zip архивом вследствии наверно этого у меня в head коды неработают поэтому нужно было вставить их всамый низ)

и опять прошу помощу у вас
<script>
$(document).ready(function(){
 $("#testsound").jPlayer({ready: function () {
  $("#testsound").change('snd/Sound1.mp3');},cssPrefix: "different_prefix_example"});
 $("#testsound").jPlayerId("play", "player_play");
});
</script>

<div id="testsound"></div>
 <a onmouseover="$('#testsound').play(); return false;" href="#">play</a>

нужно сделать попроще код напрямую через тег А а то у меня лишний блог стоит.. непонимаю принцип работы, пробывал сократить неполучилось если напрямую ид id="testsound" привязать к тегу А то он прочто исчезнит непонимаю..

x-yuri 31.05.2009 02:54

откуда ты взял player_play и зачем вообще та строчка?

откуда ты change взял? или ты в качестве обработчика события change (которое не возникнет) решил строку назначить?

а исчезает, потому что в #testsound вставляется флешка размера 0x0 px (кстати, она симпатично ;) выглядит), поэтому и исчезает. Мог бы сам firebug'ом посмотреть

nemo 31.05.2009 05:05

(блин хотпнл отредактировать нечайно добавил)

nemo 31.05.2009 14:26

x-yuri,
щас попробую подправить

nemo 31.05.2009 14:55

<script>
$(document).ready(function(){
 $("#testsound").jPlayer({ready: function () {
 $("#testsound").change('snd/Sound1.mp3');},cssPrefix: "my_jp_class"});
});
//- просто удалил ту строчку что ты сказал
</script>


<div id="testsound"></div>
//- это флешку можно оставить 1 на всю страницу?
<a onmouseover="$('#testsound').play(); return false;" href="#">play</a>
//- при наведении тестсоунд играет

поповуду change непонял что сним делать

однако а как сделать чтобы в тег А ненужно было вводить доп. скрипт

<script>
$(document).ready(function(){
 $("#jqueryplayer").jPlayer({ready: function () {
  $(document).onmouseover(function(){
   $("#testsound").change('snd/Sound1.mp3').play();},cssPrefix: "my_jp_class"});
});
</script>


пойду чай попоью бысренько

x-yuri 31.05.2009 15:49

Цитата:

это флешку можно оставить 1 на всю страницу?
да

Цитата:

поповуду change непонял что сним делать
где ты взял этот change? У jPlayer есть setFile

Цитата:

однако а как сделать чтобы в тег А ненужно было вводить доп. скрипт
mouseover

nemo 31.05.2009 16:34

x-yuri,
ангел - хранител - программистов :rolleyes:

<script>
$(document).ready(function(){
 $("#testsound").jPlayer({ready: function () {
 $("#testsound").change('snd/Sound1.mp3');},cssPrefix: "my_jp_class"});
 $("#mousebutton").mouseover(function(){
 $('#testsound').play(); return false;});
});
</script>


<div id="testsound"></div>
 <a id="mousebutton" href="#">play</a>


Работает!

nemo 31.05.2009 16:56

x-yuri,
Однако вопрос последний на эту тему остался
http://muzmax.ru/
попробуй поведи по иконкам, воспроизводится медленно.
Можно что нибудь сделать чтобы работало быстрее?)

x-yuri 31.05.2009 16:59

блин, как оно может работать? change не указывает, какой файл нужно подключить, для этого setFile есть. Может ты его где-то в другом месте вызываешь
а без change работает?

x-yuri 31.05.2009 17:00

Цитата:

Можно что нибудь сделать чтобы работало быстрее?)
а если при наведении сначала останавливать воспроизведение, а потом запускать заново?

nemo 31.05.2009 17:10

x-yuri,
без change - не работает с setfile тоже неработает, но с change работает нормально)
Цитата:

а если при наведении сначала останавливать воспроизведение, а потом запускать заново?
всмысле при новом наведение?) если так то попробую.. хотя я только что поменял звук он быстрее вроде работает но всё же протестирую всякие способы чтобы грузилось быстро..

nemo 31.05.2009 17:20

x-yuri,
только $('#jquery_player').play(); return false;}); - воспроизводит..
можешь плз дописать чтобы сначало останавливало а потом вопроизводило?.. stop() останавливает но незнаю как так написать чтобы сначало он останавливал..

x-yuri 31.05.2009 17:24

$('#jquery_player').stop().play();

nemo 31.05.2009 17:36

не он так неработает..он сразу останавливает..

x-yuri 31.05.2009 17:40

кстати, используй лучше mouseenter: mouseover возникает также при наведении на дочерние объекты

x-yuri 31.05.2009 17:42

Цитата:

не он так неработает..он сразу останавливает..
а почему у меня работает? Я думаю так: когда у тебя setFile заработает вместо change, тогда и stop заработает :haha:

nemo 31.05.2009 17:47

x-yuri,
http://docs.jquery.com/Events/mouseenter
я попробывал вместо моусовер вставить моусинтер но так неработает..
Цитата:

а почему у меня работает? Я думаю так: когда у тебя setFile заработает вместо change, тогда и stop заработает
о_о у меня код неправильный?

nemo 31.05.2009 22:04

x-yuri,
можешь показать свой код который > у тебя работает?

x-yuri 31.05.2009 22:43

ну в каком-то смысле правильный, т.е. он же как-то работает, только непонятно почему
у меня вот такая штука работает, например
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
<head>
	<title>title</title>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
	<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script>
	<script type="text/javascript" src="jquery.jplayer.js"></script>
<script> 
$(document).ready(function() {
	$("#jpId").jPlayer({
		ready: function () {
			$("#jpId").setFile("Sound1.mp3");
		},
		swfPath: '' });
	for( var i=0; i<10; i++ )
		$('body').append('<a href="#">link</a>');
	$('body a').mouseenter(function() {
		$('#jpId').stop().play();
	});
});
</script>
</head>
<body>
<div id="jpId"></div>
</body>
</html>

только исправь все пути. Но все равно тормозит (хоть и меньше), так что тебе похоже стоит поискать другой скрипт :)

nemo 01.06.2009 00:45

x-yuri,
Спасибо, щас попробую поапелировать твой код какнибудь.. у меня он так неработает да и оригинал с офф сайта тоже. проблема вмоем хостинге скорее всего.
Цитата:

Но все равно тормозит (хоть и меньше), так что тебе похоже стоит поискать другой скрипт
искал много времени самый нормальный на флешь, сприсущем jquery помоему..лучшего варианта уменя нет..

x-yuri 01.06.2009 00:55

значит твоим пользователям повезло ;)

nemo 01.06.2009 01:31

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

$(document).ready(function(){
$("#jquery_player").jPlayer({
ready: function () {
$("#content .node li a").mouseover(function(){
$("#jquery_player").change('snd/deckopicon.mp3');
$("#jquery_player").play();
});
}
});
});
как мне сдесь указать например воспроизведение двух разных звуков на две разные категории кнопок? с одного флешь плеера #jquery_player ?..

x-yuri 01.06.2009 02:25

у тебя моя страничка работает с исправленными путями?

nemo 01.06.2009 02:35

x-yuri,
неработает можешь проверить muzmax.ru

скрипты стоят после </body> так как в голове они неработают
как проверишь ска я верну страницу обратно

nemo 01.06.2009 02:37

x-yuri,
неработает можешь проверить muzmax.ru

скрипты стоят после </body> так как в голове они неработают
как проверишь ска я верну страницу обратно
x-yuri,
точто я процитировал скрипт ещё работает еле еле но непонимаю как поставить звуки на другие кнопки

с 1 ой флеш блока

x-yuri 01.06.2009 02:45

я говорю именно про мою страницу, а не про то, что ты перенес на свою страницу

x-yuri 01.06.2009 02:47

у тебя все пути правильные? Включая swfPath?

nemo 01.06.2009 02:50

про swfpath впервые слышу ну уменя есть Jplayer.swf если этонето то патча нет..

x-yuri 01.06.2009 03:06

поищи тут swfPath

Gvozd 01.06.2009 03:08

у вас пытается подгрузится файл http://muzmax.ru/js/Jplayer.swf/Jplayer.swf которого нет
зато есть http://muzmax.ru/js/Jplayer.swf
исправьте пути


Часовой пояс GMT +3, время: 04:09.