Question

J'essaie d'utiliser ce code pour le texte sur le lien basculer:

var showText="<span>Open</span> &darr;";
var hideText="<span>Close</span> &uarr;";
$('h1').before('<a href="javascript:;" id="hc_toggle_close">' + showText + '</a>');
$('#hc_toggle_close').click(function () {
    $('#hc_toggle_close:contains("Open")').html(hideText);
    $('#hc_toggle_close:contains("Close")').html(showText);
});

Mais cela ne fonctionne pas! En plus d'une habitude si ... la construction d'autre. Quelqu'un pourrait-il s'il vous plaît me montrer ce qui ne va pas ici. Merci!

Était-ce utile?

La solution

Utilisez la fonction d'aide de toggle:

var showText="<span>Open</span> &darr;";
var hideText="<span>Close</span> &uarr;";
$('h1').before('<a href="javascript:;" id="hc_toggle_close">' + showText + '</a>');
$('#hc_toggle_close').toggle(
  function () {
    $('#hc_toggle_close').html(hideText);
  },
  function () {
    $('#hc_toggle_close').html(showText);
  }
);

De la documentation toggle:

  

Chaque fois que vous cliquez sur un élément adapté,   la première fonction spécifiée est tiré,   lorsque vous cliquez dessus à nouveau, le second est   mis à la porte. Tous les clics ultérieurs continuent   faire tourner par l'intermédiaire des deux fonctions.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top