私はjqueryに比較的慣れていないので、同じものを何度も積み重ねるのではなく、Wistiaビデオプレーヤースクリプト用の単一の関数を作成しようとしています。一部のページには、それぞれを再生するために特定の URL が必要な最大 20 個のビデオが含まれています。
オリジナル:
wistiaJQuery(document).ready(function () {
var url = window.location.href.toString();
// this will autoplay video with url 'www.my-site.com/a-name'
if (url.indexOf('a-name') != -1) {
wistiaJQuery('.a-name').click();
$(".wistia-fancybox #fancybox-overlay").css("display", "block");
}
// this will autoplay video with url 'www.my-site.com/b-name'
if (url.indexOf('b-name') != -1) {
wistiaJQuery('.b-name').click();
$(".wistia-fancybox #fancybox-overlay").css("display", "block");
}
// this will autoplay video with url 'www.my-site.com/c-name'
if (url.indexOf('c-name') != -1) {
wistiaJQuery('.c-name').click();
$(".wistia-fancybox #fancybox-overlay").css("display", "block");
}
});
次のようなものに:
wistiaJQuery(document).ready(function () {
function playVideo(selector) {
$(selector).each(function () {
var url = window.location.href.toString();
var el = $(this);
var vid = function () {
if (url.indexOf(el) != -1) {
wistiaJQuery('.' + el).click();
$(".wistia-fancybox #fancybox-overlay").css("display", "block");
}
};
$(el).on('load', vid);
});
}
playVideo('a-name,b-name,c-name');
});