Jquery顶部的两行Javascript不起作用

2 lines of Javascript on top of Jquery doesnt work?

本文关键字:两行 Javascript 不起作用 顶部 Jquery      更新时间:2023-09-26

我对Javascript和Jquery有点陌生,我只想做一个导航栏的简单测试。我想弄清楚为什么我的Jquery根本不起作用。。。当我擦除Javascript的前两行时,一切都很好。。。什么鬼东西???有人可以解释为什么会是这样??

我的html:

<div id="navbar">
  <ul class="ulbar">
    <li id="libar">a
      <div id="navbar2"></div>
    </li>
  </ul>
</div>

我的JS和Jquery(在同一.JS上):

var buttonA = document.getElementById("libar");
var buttonB = document.getElementById("navbar2");
$(".libar").click(function(){
  $(".navbar2").hide("slow", function() {
alert("test");
  });
});

感谢所有

尝试

$(buttonA).click(function(){
  $(".navbar2").hide("slow", function() {
alert("test");
  });
});

首先获取dom元素BY ID,然后引用BY class。

我想您无法区分"class"answers"id"属性。

//在JavaScript中var buttonA = document.getElementById("libar").value;

//使用jquery,您可以将其重写为

var buttonA = $('#libar').val();

因此,在jquery中,html元素的"id"属性是通过使用"#"访问的,其中"class"属性是使用"."访问的。

希望能有所帮助。

尝试这个

var buttonA = document.getElementsByClassName("libar");
var buttonB = document.getElementsByClassName("navbar2");

而不是

var buttonA = document.getElementById("libar");
var buttonB = document.getElementById("navbar2");

我认为你的html中有类,而不是id

您需要在html 中添加id