Bonjour,
Pour éviter à l'utilisateur d'avoir à modifier les paramètres à la main, et pour lancer l'api YouTube afin de pouvoir stopper une video quand une autre est lancée, j'ai un script permettant d'ajouter des paramètres à l'adresse html de la vidéo.
Le principal écueil étant que le 1er paramètre d'une src YouTube est précédé d'un "?" et les suivants d'un "&".
Si l'utilisateur copie le code iframe YouTube brut = sans paramètre, mon script devra insérer des paramètres dont le 1er sera précédé par un "?".
Au contraire si l'utilisateur fait quelques réglages dans l'interface d'intégration YouTube, l'adresse html de l'iframe YouTube comportera déjà un 1er paramètre avec un "?" et mon script devra insérer des paramètres dont le 1er sera précédé par un "&".
J'essaye donc d'élaborer un commentaire conditionnel prévoyant les 2 situations et détectant la présence d'un "?" dans la src de l'iframe.
J'ai trouvé ('iframe[src~="?"]') que j'essaye d'utliser, mais comme mes connaissances sont assez limitées ça ne donne pas l'effet voulu.
Le cas exposé en dessous ignore le else.
Les 2 autres essayés en commentaire ignorent le if.
Il y a sûrement un problème de syntaxe mais lequel ?
Merci d'avance pour toute suggestion !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 jQuery(document).ready(function($) { $('iframe').each(function() { var tubesrc = $(this).attr("src"); if ('$(this)[src~="?"]') { //if ( $('this').is('iframe[src~="?"]') ) { //if ( $('this')==('iframe[src~="?"]') ) { $(this).attr("src", tubesrc + "&enablejsapi=1&showinfo=0&rel=0&iv_load_policy=3"); $(this).src += "&enablejsapi=1&showinfo=0&rel=0&iv_load_policy=3"; } else { $(this).attr("src", tubesrc + "?enablejsapi=1&showinfo=0&rel=0&iv_load_policy=3"); $(this).src += "?enablejsapi=1&showinfo=0&rel=0&iv_load_policy=3"; } }); });
Partager