在javascript中创建一个var;修改脚本以创建var用法?
对于熟悉js的人来说,我有一个相当简单的问题。我非常喜欢音频播放器的风格: 我已经将其提取到一个rails项目中,但是WordPress插件在php中创建了一个变量在javascript中创建一个var;修改脚本以创建var用法?,javascript,Javascript,对于熟悉js的人来说,我有一个相当简单的问题。我非常喜欢音频播放器的风格: 我已经将其提取到一个rails项目中,但是WordPress插件在php中创建了一个变量\wpaudio,如下所示: ## WPaudio style, jQuery, SWFObject function wpaHead(){ global $wpa_options; # Put all styles into the _wpaudio settings object $style = '';
\wpaudio
,如下所示:
## WPaudio style, jQuery, SWFObject
function wpaHead(){
global $wpa_options;
# Put all styles into the _wpaudio settings object
$style = '';
foreach ( $wpa_options as $key => $value ) {
$exploded = explode('_', $key, 3);
if ( $exploded[1] == 'style' ) {
$style .= $exploded[2] . ":'$value',";
}
}
$style = trim( $style, ',' );
$style = '{' . $style . '}';
# Common JS
$wpa_pref_link_mp3 = ($wpa_options['wpa_pref_link_mp3']) ? 'true' : 'false';
$head = "<script type='text/javascript'>/* <![CDATA[ */ var _wpaudio = {url: '" . WPAUDIO_URL . "', enc: {}, convert_mp3_links: $wpa_pref_link_mp3, style: $style}; /* ]]> */</script>";
echo $head;
}
##WPaudio样式,jQuery,SWFObject
函数wppahead(){
全球$wpa_选项;
#将所有样式放入wpaudio设置对象
$style='';
foreach($wpa_选项为$key=>$value){
$exploded=exploded(“”,$key,3);
如果($exploded[1]=='style'){
$style.=$exploded[2]。“:'$value',”;
}
}
$style=修剪($style,,');
$style='{.$style.'}';
#普通JS
$wpa_pref_link_mp3=($wpa_options['wpa_pref_link_mp3'])?'true':'false';
$head=“/**/”;
回声头;
}
显然,几乎所有这些代码都不相关,不过,这只是为了说明\wpaudio
变量是在那里创建的。我真的不想构建路径,等等。我只是希望能够操纵脚本,以便在js文件中创建var。我尝试过几种不同的方法,但我对javascript非常不熟悉,所以我的尝试到目前为止都是徒劳的
以下是在控制台中加载失败的javascript,其中包含找不到变量:wpaudio
错误:
如何修改脚本,使其在初始化时正确创建_wpaudio?如果您在wpaudio插件文件夹的文件中搜索_wpaudio,您将在wpaudio.php的第150行找到它(是的,您提供的代码段中显示的):
$head=“/**/”;
这告诉您应该在html页面的某个地方插入此脚本片段。$head表示插件将把它添加到文档的head部分(…)。那可能是个不错的地方。在任何情况下,在初始化插件之前都应该存在一个_wpaudo变量,在加载wpaudo.js之前应该插入该脚本片段
<script type='text/javascript'>
/* <![CDATA[ */
var _wpaudio = {
url: "[[path/to/wpaudio-mp3-player]]",
enc: {},
convert_mp3_links: [[true|false]],
style: {[[style formatting as a json object, empty object should work]]} };
/* ]]> */
</script>
/* */
我已经查看了您的错误案例。但是我看不出你在哪里实例化了一个叫做wpuaudio的对象。你缺少一些代码吗?不,对不起,这正是我最初需要做的。我不确定在这种情况下在哪里实例化对象。好的,这非常有用,谢谢。我做了一个不同的触摸,但它现在得到初始化。然而,我有一个问题,我很好奇你是否能提供建议。我得到:错误:语法错误,无法识别的表达式:[href$=.mp3]
。在初始化函数中,我看到了(第10行):明白了,没关系。mp3根本没有被引用。工作很好,看起来很好!WPAudio现在是Rails基于链接的音频播放器的超级实现!
<script type='text/javascript'>
/* <![CDATA[ */
var _wpaudio = {
url: "[[path/to/wpaudio-mp3-player]]",
enc: {},
convert_mp3_links: [[true|false]],
style: {[[style formatting as a json object, empty object should work]]} };
/* ]]> */
</script>