jquery脚本不能使用.live的jquery 1.11.0原因

时间:2016-01-17 22:07:00

标签: jquery function live

我写了这个脚本,但我知道在1.11版本中不推荐使用live函数。

jQuery(document).ready(function(){
            jQuery('#menu-button').live('click', function(event) {        
            jQuery('#menumobile').toggleClass('hidemobilemenu');
    });
});

所以它不起作用,但我需要jQuery 1.11用于其他插件。 我尝试用.on改编它,但它没有成功。 正如您所看到的,当您使用jQuery 1.6.2版本时,它在代码段中有效 非常欢迎任何帮助。谢谢



			jQuery(document).ready(function(){
			jQuery('#menu-button').live('click', function(event) {        
			jQuery('#menumobile').toggleClass('hidemobilemenu');
    });
});

#menu-button {
    background-color: #ddd;
    position: fixed;
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
    cursor: pointer;
    border-radius: 50%;
    width: 36px;
    height: 36px;
    top: 15px;
    right: 13px;
    z-index: 30;
}
#menumobile {
    background: #fff none repeat scroll 0 0;
    height: 100%;
    left: 0px;
    padding: 50px 70px 0 40px;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 29;
}
 .hidemobilemenu {
    display: none;
  }

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<div id="menu-button">
<a href="#"><span></span><span></span><span></span></a>
    </div>
    <div id="menumobile" class="hidemobilemenu">      
	<ul>
        <li class="<?php echo ($_SERVER['REQUEST_URI'] == "/index.php" ? "active" : "");?>"><a href="/index.php">HOME</a></li>
        <li class="<?php echo ($_SERVER['REQUEST_URI'] == "/menu.php" ? "active" : "");?>"><a href="menu.php">MENU</a></li>
        <li class="<?php echo ($_SERVER['REQUEST_URI'] == "/about.php" ? "active" : "");?>"><a href="about.php">ABOUT</a></li>
        <li class="<?php echo ($_SERVER['REQUEST_URI'] == "/contact.php" ? "active" : "");?>"><a href="contact.php">CONTACT</a></li>
      </ul>
	</div>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

你不能轻易改变.live .live。 sintax改变了。 我跟着this guide,但它仍然无效。 检查代码段。不知道什么是错的

修改 解决了。我只是使用css作为子元素,而不是父元素,现在它工作:) 片段更新并正常工作

$(document).ready(function() {
  $("#menu-button").on("click", ".clickspan", function() {
    $("#menumobile").toggleClass("hidemobilemenu");
  });
});
.clickspan {
  background-color: #ddd;
  position: fixed;
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  cursor: pointer;
  border-radius: 50%;
  width: 36px;
  height: 36px;
  top: 15px;
  left: 13px;
  z-index: 30;
}
#menumobile {
  background: #fff none repeat scroll 0 0;
  height: 100%;
  left: 0px;
  padding: 50px 70px 0 40px;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 29;
}
.hidemobilemenu {
  display: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="menu-button">
  <div class="clickspan">
   <a href="#"> <span></span><span></span><span></span> </a>
  </div>
</div>
<div id="menumobile" class="hidemobilemenu">
  <ul>
    <li class="<?php echo ($_SERVER['REQUEST_URI'] == " /index.php " ? "active " : " ");?>"><a href="/index.php">HOME</a>
    </li>
    <li class="<?php echo ($_SERVER['REQUEST_URI'] == " /menu.php " ? "active " : " ");?>"><a href="menu.php">MENU</a>
    </li>
    <li class="<?php echo ($_SERVER['REQUEST_URI'] == " /about.php " ? "active " : " ");?>"><a href="about.php">ABOUT</a>
    </li>
    <li class="<?php echo ($_SERVER['REQUEST_URI'] == " /contact.php " ? "active " : " ");?>"><a href="contact.php">CONTACT</a>
    </li>
  </ul>
</div>