Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/470.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用通配符选择对象ID时出错_Javascript_Jquery_Jwplayer - Fatal编程技术网

Javascript 使用通配符选择对象ID时出错

Javascript 使用通配符选择对象ID时出错,javascript,jquery,jwplayer,Javascript,Jquery,Jwplayer,我在页面上使用多个jwplayer实例,每次加载页面时,这些实例都会在播放器ID的末尾生成随机键。示例:jwplayer\u ad1\u 012和下一次刷新时jwplayer\u ad1\u 123。 我正试图通过使用javascript$(“object[id^='jwplayer\u ad1\u'])来选择播放器并使其播放(我知道自动播放)这就抛出了一个错误。我试图将$(“object[id^='jwplayer\u ad1\u'])分配给一个var,并使用testvar.jwplayer(

我在页面上使用多个jwplayer实例,每次加载页面时,这些实例都会在播放器ID的末尾生成随机键。示例:
jwplayer\u ad1\u 012
和下一次刷新时
jwplayer\u ad1\u 123
。 我正试图通过使用javascript
$(“object[id^='jwplayer\u ad1\u'])来选择播放器并使其播放(我知道自动播放)这就抛出了一个错误。我试图将
$(“object[id^='jwplayer\u ad1\u'])
分配给一个var,并使用
testvar.jwplayer().play()window.alert(testvar)
以确保已设置var,且警报仅显示[object]


我能了解一下我做错了什么吗?

我不相信
jwplayer
是一个jQuery插件,但你试图把它称为一个

建议为了使用
jwplayer
,调用
jwplayer
函数并将要使用的元素的
id
或索引(0=第一个)传递给它

因此,如果您想玩第一个,只需:

jwplayer(0).play();
或者(默认值显然是
0
):

如果您想要其中一个,可以使用更高的索引

如果您想用
id
代替,您可以找到
id

var id = $("object[id^='jwplayer_ad1_']").attr("id");
…然后这样做:

if (id) { // Did we find one (the above returns `undefined` if there weren't any)
    jwplayer(id).play();
}

…但这是一种非常迂回的方式。

对象[id^='jwplayer\u ad1']中的对象是什么?你有“object”元素吗?…这是一个错误…“什么错误?是我的jwplayer代码生成的flash播放器。”。我以为
object[id^='jwplayer\u ad1\u']
只会选择在ID@n1nja:它将选择其
id
属性以
jwplayer\u ad1\u
开头的任何
对象
元素,是的。你能用小提琴复制它吗?这太完美了。似乎我丢失了
.attr(“id”)
所以为了确保我理解这一点,
$(“object[id^='jwplayer\u ad1'])
只选择对象作为一个整体,而
.attr(“id”)正在选择对象的单个属性吗?
if (id) { // Did we find one (the above returns `undefined` if there weren't any)
    jwplayer(id).play();
}