Je n'arrive pas à faire en sorte que Twipsy lise les attributs de données définis sur les éléments activés par Twipsy.
J'ai un <input...>
avec les attributs suivants :
rel="twipsy"
data-trigger="focus"
Les <head...>
contient le JS script suivant :
$(document).ready(function () {
$(function () {
$('[rel=twipsy]').twipsy({ live: true });
});
});
Lorsqu'il est exécuté, Twipsy est déclenché par la fonction centre de souris y quitter la souris événements, et non se focaliser y flou , en tant que la documentation suggère.
J'ai donc changé le JS script de ma page en :
$(document).ready(function () {
$(function () {
$('[rel=twipsy]').twipsy({ live: true, trigger: ($(this).attr('data-trigger') == 'focus' ? 'focus' : 'hover') });
});
});
Même résultat. Bien que j'utilise Prototype depuis longtemps, je n'ai commencé à jouer avec JQuery que depuis une semaine, il est donc tout à fait possible (OK - très probable) que je ne comprenne tout simplement pas comment JQuery gère les collections, l'énumération et l'énumération. cette .
$(document).ready(function () {
$(function () {
$('[rel=twipsy]').each(function () {
var trigger = $(this).attr('data-trigger')
$(this).twipsy({ live: true, trigger: (trigger == 'focus' ? 'focus' : 'hover') })
});
});
});
Et cela fonctionne comme prévu.
Ma question est donc la suivante : Qu'est-ce que j'ai fait de mal dans les deux premiers exemples ? Pourquoi l'attribut data-trigger de l'élément n'a-t-il pas été reconnu et qu'est-ce qui n'allait pas avec le JS script dans le deuxième exemple ?