【发布时间】:2014-06-21 21:47:31
【问题描述】:
我在网上找到了一个 jQuery 声音插件(没有 flash),它是 script.aculo.us 的 sound.js (http://script.aculo.us) 的一部分,基于 Jules Gravinese (http://www.webveteran.com/) 的代码。
不起作用:
<script type="text/javascript" src="/data/js/sound.js"></script>
作品:
<? include($_SERVER['DOCUMENT_ROOT']."/data/js/sound.js");?>
应该改变什么,所以我的 test.php 可以使用正常的 include 方法? 为什么此脚本仅适用于 query/1.4.2/jquery.min.js 而不适用于 jquery/1.11.1/ 或我的 jquery-2.1.0.min.js
test.php
<img src="/bilder/flaggen/englisch.png" onclick="$.sound.play('http://translate.google.com/translate_tts?ie=UTF-8&tl=en&q=Test')" style="cursor:hand;cursor:pointer;">
声音.js
<script type="text/javascript">
(function($) {
$.sound = {
tracks: {},
enabled: true,
template: function(src) {
return '<embed style="height:0" loop="false" src="' + src + '" autostart="true" hidden="true"/>';
},
play: function(url, options){
if (!this.enabled)
return;
var settings = $.extend({
url: url,
timeout: 2000
}, options);
if (settings.track) {
if (this.tracks[settings.track]) {
var current = this.tracks[settings.track];
// TODO check when Stop is avaiable, certainly not on a jQuery object
current.Stop && current.Stop();
current.remove();
}
}
var element = $.browser.msie
? $('<bgsound/>').attr({
src: settings.url,
loop: 1,
autostart: true
})
: $(this.template(settings.url));
element.appendTo("body");
if (settings.track) {
this.tracks[settings.track] = element;
}
if(options){
setTimeout(function() {
element.remove();
}, options.timeout)
}
return element;
}
};
})(jQuery);
</script>
【问题讨论】:
-
请问你的演示链接?
标签: javascript jquery audio