0

Slicknavメニューを開いたり閉じたりするときのSlicknavのラベルを変更しようとしています。

jsfiddleでは、こちら。デフォルトの状態にはラベルを閉じ、開いた状態には別のテキストを使用しました。別のテキストが必要です。

通常の状態では次のようになります。

$('#menu').slicknav({
    duplicate: false,
    label: 'label closed'
});

私は基本的なものを使ってみましたが、この非常に単純なJavaScriptを台無しにしているように感じます。

どんな助けでも大歓迎です!

4

2 に答える 2

2

docsをざっと見た後、
このようなものがうまくいくはずです。

var $label;
$('#menu').slicknav({
    duplicate: false,
    label: 'label closed',
    init: function() {
        $label = $(".slicknav_menutxt");
    },
    open: function() {
        $label.text("label open");
    },
    close: function() {
        $label.text("label closed");
    } 
});

jsfiddleへのリンクも

于 2014-12-07T14:38:13.333 に答える
0

slicknav_menutxtクラスのスパンにテキストが含まれているため、テキストを直接変更できます-Fiddle

$('#open').click(function (event) {
  event.preventDefault();
  $('#menu').slicknav('open');
  $(".slicknav_menutxt").text("label open");

});

$('#close').click(function (event) {
  event.preventDefault();
  $('#menu').slicknav('close');
  $(".slicknav_menutxt").text("label closed");

});

$('#toggle').click(function (event) {
  event.preventDefault();
  if ($(".slicknav_menutxt").text().indexOf("open") >= 0) {
    $(".slicknav_menutxt").text("label closed");
   } else {
    $(".slicknav_menutxt").text("label open");
  }
  $('#menu').slicknav('toggle');
});
于 2014-12-07T14:15:46.003 に答える