jquery click事件不起作用

我编写了这段代码,我需要使用jquery来处理点击事件,但它在任何浏览器中都不起作用,当我点击任何元素时没有任何反应。 div在css中没有z-index;

孔“news”元素动态添加这是html代码

not accepted
accepted
edited by
arvin
چdate
time
1000
title
time
date
cat
part
sgmnt
writer
view post
edit
delete
accept

这是我的jquery代码

 $(document).ready(function () { $("#littleNews").click(function () { alert("hi"); }); }); 

它不适用于“新闻”类中的任何元素

我有这个代码,这段代码创建了整个div

 $("#news").clone().appendTo("#mainDiv").attr("id","news"+(i+1)) 

正如你所展示的那样 ,你的代码和HTML 在jsFiddle中运行得很好。 所以,这些与你展示它们完全没有问题。 它更可能是页面中的环境或动态HTML。 一些可能性:

  1. 安装事件处理程序后,动态添加HTML元素。
  2. 您没有正确安装jQuery。
  3. 您有一个脚本错误,阻止其他脚本运行。
  4. 您的页面中某处有重复的ID。
  5. 你没有使用正确的选择器(也许你想要".news"

如果在安装事件处理程序后动态添加HTML,则需要使用委托事件处理,如下所示:

 $(document).ready ( function () { $(document).on ("click", "#littleNews", function () { alert("hi"); }); }); 

提示: $(document)实际上应该是#littleNews最接近的父#littleNews ,它不是在安装事件处理程序后动态创建的。 我不知道那是什么,所以我选择了最安全的$(document) ,但是如果使用最接近的静态父级,事情表现更好(特别是如果你有很多委托的事件处理程序)。


从您的问题中不清楚,但如果您还希望您的事件处理程序覆盖.news所有内容, .news需要更改选择器以覆盖它。

尝试这样的事情

  $(document).on('click','#littleNews',function () { alert("hi"); }); 

我测试了你的代码,它的工作原理。

我想你不记得添加了jquery。

 $("#littleNews").click (function(){ alert("hi"); }); 

演示

试试这个,

 $(function () { $("#littleNews div").on('click',function () { alert($(this).text()); }); }); 

演示

你询问“新闻”课程。 您发布的代码不以任何方式引用它。

也许你想要这个?

 $(document).ready(function () { $("#littleNews, .news").click(function () { alert("hi"); }); }); 

小提琴

可能其中一个div标签落在了littlenews div上。

测试:

为所有div设置(border:1px red solid)。

希望能帮助你。

确保你没有忘记将jQuery库添加到html文件中。 如果它发生在 从google或microsoft cdn添加它,如下所示解决了这个问题。