在阅读了Flowplayer论坛上的一些主题和回复后,我发现你们可能对我的问题有更好的帮助。
你可能知道Flowplayer覆盖插件使用rel
属性来针对特定的覆盖容器。例如:
<a href="#" id="signup" rel="#signupOverlay"></a>
$("#signup[rel]").overlay({
mask: {
color: '#000',
loadSpeed: 200,
opacity: 0.9
}
});
我真的不想使用rel
属性,而是HTML5的数据属性。
所以它看起来像这样:
<a href="#" id="signup" data-overlay="#signupOverlay"></a>
$("#signup[data-overlay]").overlay({
mask: {
color: '#000',
loadSpeed: 200,
opacity: 0.9
}
});
遗憾的是,这行不通。
所以,我也试图在插件代码中更改以下行:var n=e.target||d.attr("rel");
到var n=e.target||d.attr("data-overlay");
但这也行不通。
如果你们中有人可能已经遇到过这个问题并解决了它,我将很高兴听到如何!
试试这个:
$("#signup").live('click', function (event) {
event.preventDefault(); //prevent default link action
var $href = $(this).attr('data-overlay');
$(this).overlay({
target: $href,
load: true
});
});
我没有测试过这样的,但我已经适应了它从一个代码,我用href代替数据覆盖,它的工作原理。我想这也可以。