带有 jquery-cookie 的函数 showHide(shID)

function showHide(shID) with jquery-cookie

我需要为函数 showHide(shID) 放置 jquery-cookie,有人知道该怎么做吗?我有一个 onclick 按钮来显示更多内容,使用函数 showHide(shID) 但我只需要隐藏一次。那么是否可以为其添加 jquery-cookie?我该怎么做? [https://github.com/carhartl/jquery-cookie#readme][1]

这里是我的 code:function showHide(shID)

<script language="javascript" type="text/javascript">
function showHide(shID) {
   if (document.getElementById(shID)) {
      if (document.getElementById(shID+'-show').style.display != 'none') {
         document.getElementById(shID+'-show').style.display = 'none';
         document.getElementById(shID).style.display = 'block';
      }
      else {
         document.getElementById(shID+'-show').style.display = 'inline';
         document.getElementById(shID).style.display = 'none';
      }
   }
}
</script>

拜托,我需要有人指导我或让我知道该怎么做。提前致谢!

是的,可以使用 cookie 来使用 cookie,您必须包含 cookie 文件和 jquery 文件。我举个例子。

if($.cookie("example")=='1') {
    //get cookie and your hide code here.
} else {
    //set cookie
    $.cookie("example", "1");
}

这是一个答案,由 Ionica Bizau 解决https://whosebug.com/users/1420197/ionic%C4%83-biz%C4%83u

function showHide(setCookie) {
    var shID = $(this).data("showhide")
      , $shEl = $("#" + shID)
      , $showHide = $("#" + shID + '-show')
      ;

    if ($shEl.is(":hidden")) {
        if (setCookie !== false) {
            jQuery.cookie("showhide-" + shID, 1);
        }
        $showHide.hide();
        $shEl.show();
    } else {
        if (setCookie !== false) {
            jQuery.cookie("showhide-" + shID, 0);
        }
        $showHide.show();
        $shEl.hide();
    }
}

jQuery(document).ready(function () {
    $("#example-show").on("click", showHide);
    if (jQuery.cookie("showhide-" + "example") == '1') {
        showHide.call($("#example-show").get(0), false);
    }
});