从功能中获取变量

时间:2012-09-13 15:07:12

标签: javascript

有没有办法让我从这个函数获取文件url而不更改javascript并且不运行该函数?

  jwplayer('jsCmgPlayer').setup({
    flashplayer: 'http://website.com/player.swf',
    file: 'http://website.com/0015980.mp3',
    autostart: true,
 'skin': 'http://www.website.com/skin.xml',
 'controlbar': 'bottom',
    height: 28,
    width: 620
  });

我想将http://website.com/0015980.mp3作为单独的变量。

3 个答案:

答案 0 :(得分:1)

这是不可能的。如果您不运行该函数,则无法通过插件API访问该属性,因为它从未设置过,也无法从JavaScript代码中的外部作用域访问它。参数哈希在此函数之外是不可见的。

答案 1 :(得分:0)

没有。如果未运行该函数,则无法访问包含url的对象。您只能尝试将函数的源代码作为字符串,并在其中挖掘,例如使用正则表达式匹配该对象文字。

答案 2 :(得分:0)

您提供的javascript已经在运行该功能。由于正在调用设置代码而提供了参数,你可以这样做:

// create the arguments object
var setupArgs = {
    flashplayer: 'http://website.com/player.swf',
    file: 'http://website.com/0015980.mp3',
    autostart: true,
    'skin': 'http://www.website.com/skin.xml',
    'controlbar': 'bottom',
    height: 28,
    width: 620
}

// setup the plugin
jwplayer('jsCmgPlayer').setup(setupArgs);

现在您可以使用您想要的参数来访问该URL:

// use the arguments object for other things
setupArgs.file;