代替单击事件功能,可以将鼠标悬停事件更改为

时间:2020-02-18 08:47:18

标签: javascript jquery

$(window).ready(i), 
$(window).on("resize", i), 
$(".sidebartoggler").on("click", function() {
  $("body").hasClass("mini-sidebar") 
    ? ($("body").trigger("resize"), 
      $(".scroll-sidebar, .slimScrollDiv").css("overflow", "hidden").parent().css("overflow", "visible"), 
      $("body").removeClass("mini-sidebar"), 
      $(".navbar-brand span").show()) 
    : ($("body").trigger("resize"), 
      $(".scroll-sidebar, .slimScrollDiv").css("overflow-x",  "visible").parent().css("overflow", "visible"), 
      $("body").addClass("mini-sidebar"), 
      $(".navbar-brand span").hide())
})

1 个答案:

答案 0 :(得分:1)

像这样?无论如何,更改都很容易

function toggle() {
  const hasSideBar = $("body").hasClass("mini-sidebar");
  $("body").trigger("resize");
  $(".scroll-sidebar, .slimScrollDiv").css("overflow", hasSideBar?"hidden":"visible").parent().css("overflow", "visible");
  $("body").toggleClass("mini-sidebar",!hasSideBar);  // or just $("body").toggleClass("mini-sidebar");
  $(".navbar-brand span").toggle(hasSideBar);
}

$(function() {
  $(window).on("resize", toggle);
  $(".sidebartoggler").on("hover", toggle);
  toggle();
});