我们正在开发一个网站,其中我们有一个Flash元素,可以显示一些电影,以及一些其他视频的视频大拇指的HTML元素。
在观看下一个视频时,我们想要突出显示下方的拇指,并使用Flash可以调用的功能。
我在想这样的事情:(这显然不起作用)
function highlightMovie(4) {
$(".thumb-wrapper div").removeClass("active");
//The "4" in the below line, comes from the "4" in the Function
$(".thumb-wrapper div:nth-child(4)").addClass("active");
}
我该怎么做?如何调用没有预定义选择器的函数,但可以选择nth-child ??
提前谢谢。
答案 0 :(得分:1)
function highlightMovie(number) {
$(".thumb-wrapper div").removeClass("active");
//The "4" in the below line, comes from the "4" in the Function
$(".thumb-wrapper div:nth-child("+number+")").addClass("active");
}
不确定这是不是你要问的? 什么不起作用?
答案 1 :(得分:1)
function highlightMovie(n) {
$($(".thumb-wrapper div").removeClass("active").children()[n]).addClass("active");
}
答案 2 :(得分:0)
您可以使用ExternalInterface
从Flash调用JavaScript,并引用已开始播放的视频。据推测,您的代码中可以使用某种共享ID系统,以便您轻松识别要突出显示的缩略图。
编辑:这次尝试回答这个问题......
所以你不能这样做:
function highlightMovie(index) {
$(".thumb-wrapper div").removeClass("active");
$(".thumb-wrapper div:nth-child("+index"+)").addClass("active");
}
我没有测试过,但现在可以说你在IE 8及更低版本中根本不能使用nth-child。
答案 3 :(得分:0)
我会尝试使用ExternalInterface从AS调用JS函数。
伪js:
function highlightThumb (index) {
thumbs = getAllThumbsElem();
for (var i=0;i<thumbs.length;++i) {
if (i == index) {
highlightElement(i);
}
else {
resetHiglight(i);
}
}
}