中点击

2024-04-07

作为 JS 的相对初学者,我正在努力尝试找到解决方案。

我需要找出无序列表的哪一行被单击

<ul onclick="alert(this.clicked.line.id);">
  <li id=l1>Line 1</li>
  <li id=l2>Line 2</li>
  <li id=l3>Line 3</li>
</ul>

我真的不想为每一行添加 onclick 事件,我确信一定有办法?


您可以使用event.target为了这:

JS:

// IE does not know about the target attribute. It looks for srcElement
// This function will get the event target in a browser-compatible way
function getEventTarget(e) {
    e = e || window.event;
    return e.target || e.srcElement; 
}

var ul = document.getElementById('test');
ul.onclick = function(event) {
    var target = getEventTarget(event);
    alert(target.innerHTML);
};

HTML:

<ul id="test">
    <li>Item 1</li>
    <li>Item 2</li>
    <li>Item 3</li>
</ul>

Example: http://jsfiddle.net/ArondeParon/2dEFg/5/ http://jsfiddle.net/ArondeParon/2dEFg/5/

请注意,这是一个非常基本的示例,当您将事件委托给包含多个级别的元素时,您可能会遇到一些问题。发生这种情况时,您必须向上遍历 DOM 树才能找到包含元素。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

    中点击
  • 的相关文章

  • Chrome 开发工具:无需切换到“源”选项卡即可进入调试器

    如果我把debugger https developer mozilla org en US docs JavaScript Reference Statements debugger当 Chrome 开发工具打开时 我的 JavaScri
  • 未捕获的类型错误:无法读取未定义的属性“prop”

    我有 6 个输入复选框 如果选中的复选框超过 3 个 则最后一个复选框将被取消选中 为了更好地理解 请参阅我之前的question https stackoverflow com questions 35195235 if checkbox
  • 用于传输命名参数和正文的云端点资源属性不起作用

    我正在尝试通过gapi client rpc调用实现对谷歌云端点的调用 如文档中所述 和Google Cloud Endpoints 使用 JS 客户端进行调用 传递参数和 JSON 正文 https stackoverflow com q
  • Swift - 将图像插入 PDF 不再适用于 iOS 13

    目前正在开发在我的贷款计算器应用程序上导出 PDF 的功能 我有一个预览屏幕 可以在您保存 PDF 之前显示它 预览屏幕由带有 html 的 webView 组成 其中包含占位符 我能够成功地将图像插入到正确的占位符上 并将其显示在 PDF
  • 创建 html 结构,每个 li 中仅允许 3 个 div 元素。在 React + underscore.js 中

    这是以下内容的位副本如何创建每个 li 中仅允许 3 个 div 元素的 html 结构 在 React underscore js 中 https stackoverflow com questions 38008023 how to c
  • 在 JQuery ui 自动完成中显示图像

    我有一个带有 JQuery ui 自动完成功能的脚本 可以完美运行 有一个显示用户名字和姓氏的搜索过程 但在我的数据库中 还有用户的图片 我想将其显示在带有名字和姓氏的建议中 数据库中pic包含图片url 剧本 function searc
  • Intro.js 2页然后返回首页

    我在用intro js http introjs com 为我的网站创建一个小介绍 我希望游览从第 1 页 主页 2 另一页 然后回到第 1 页 主页 我已经成功地从第 1 2 页开始 但不确定如何让它返回到第 1 页 我对 javascr
  • 将字符串转换为正确的 URI 格式?

    有没有简单的方法可以将电子邮件地址字符串转换为正确的 URI 格式 Input http mywebsite com validate email 3DE4ED727750215D957F8A1E4B117C38E7250C33 email
  • 在移动网站中处理 iPhone 事件(如向左滑动)

    iPhone 浏览器是否有可以使用 Javascript 挂钩的特殊事件 例如 如果用户向左滑动 我想执行某个操作 如果有类似的活动 很高兴看到所有这些活动的参考 理想情况下 有一天所有触摸屏移动浏览器都会有一个标准 您可以访问多点触控事件
  • 在 Chrome 中加载analytics.js时出现307重定向

    我正在构建一个网络应用程序并使用 Google Analytics analytics js 进行分析 我最近注意到 Chrome 中的分析功能无法正常工作 我使用单独模块中的标准代码片段加载分析并通过 requirejs 包含 我已验证该
  • HttpWebRequest vs Webclient(特殊场景)

    我知道这个问题之前已经回答过thread https stackoverflow com questions 1694388 webclient vs httpwebrequest httpwebresponse 但我似乎找不到详细信息 在
  • Rails 中的 PDF 导出

    我需要将包含一些图表的 HTML 页面导出为 PDF 有哪些好的 gem 可以做到这一点 PDFKit http railscasts com episodes 220 pdfkit http railscasts com episodes
  • Onblur 事件在另一个 div 的 onclick 之前触发

    如上所述 我有一个按钮 单击该按钮将打开子菜单 对于子菜单中的每个选项 都有三个元素 我认为实际上还有更多元素 但为了简单起见 将其保留为 3 我将焦点放在子菜单的主 div 白色 框架 上 Onblur 这个 div 然后我隐藏子菜单 这
  • 如何动态隐藏和显示html元素

    html 输入元素使用链接标记隐藏和显示 示例 雅虎邮件密件抄送隐藏和显示 这是用 JavaScript 完成的 对于简单的 Javascript 即不使用jQuery你可以这样做 document getElementById idOfE
  • CSS 动画自定义属性/变量

    一段时间以来我一直在努力让它发挥作用 关键是内部 div 将具有某种形状 并且可能会不止一个 这就是为什么我使用nth child选择器 这个内部 div 应该显示然后再次隐藏一段时间 问题是 我想在一个动画中为所有 后来的 多个内部 di
  • Angular 停止 Enter 键提交

    I am trying to stop the Enter from submitting my button and rather make it point to another function I tried trapping th
  • 动态 dom 操作后,如何在浏览器历史记录中保留 dom 状态?

    是否有一个通用的解决方案来保留 dom 状态 以便当用户使用后退 前进返回页面时 整个页面处于他们离开时的确切状态 这篇文章询问并回答了为什么不同浏览器和不同 javascript 库的行为不一致 Ajax 后退按钮和 DOM 更新 htt
  • 带缩略图的轮播和 bootstrap v4

    我看到了带有缩略图的轮播演示bootstrap 3 here http jsfiddle net talmand JS6JV 我正在尝试为 bootstrap v4 实现相同的功能 但无法弄清楚如何修复一些 UI 细节 例如左 右阴影覆盖整
  • Javascript/jQuery 外部高度()

    Does idOfLememt outerHeight 对所有浏览器产生相同的结果 IE7 有什么不同吗 只要去http api jquery com outerHeight http api jquery com outerHeight
  • JavaScript 中“键”的类型是什么?

    当我失去焦点并开始思考一个愚蠢的问题时 我遇到了这样的时刻 var a b value b 的类型是什么 我的意思不是 值 的类型 而是标记为 b 的实际键 背景 当我必须创建一个字符串键时 我开始想知道这一点 var a b value

随机推荐

  • CSS 无法在生产中加载 - 开发中一切正常(Rails 4.1、Capistrano 3;bootstrap),更新:nginx 配置问题

    问题如下 在开发中一切正常 但是当我将 Rails 应用程序部署到生产环境时 该网站以纯 html 格式运行 但 CSS 引导程序 未加载 JS 可能也未加载 抱歉 我花了 2 天时间寻找了大约 15 种可能的解决方案 但无法使其发挥作用
  • 在 Visual Studio 外部启动时程序运行速度较慢

    我注意到我的程序有一些奇怪的行为 我使用 Visual Studio Professional 2013 Update 1 用 C 编写它 它由一个 exe 应用程序组成 该应用程序链接多个 DLL 并调用这些 DLL 中定义的函数 在我的
  • 如何在 MySQL 中造成死锁以进行测试

    我想让我的 Python 库与 MySQLdb 一起使用 能够检测死锁并重试 我相信我已经编写了一个很好的解决方案 现在我想测试它 对于我可以使用 MySQLdb 运行来创建死锁条件的最简单查询 有什么想法吗 系统信息 MySQL 5 0
  • Ruby 中“触发器已弃用”警告的解决方法

    我从 shell 脚本中调用 Ruby 如下所示 ruby n e print if r fromre r tore 从 Ruby 2 6 开始 我收到警告 警告 触发器已被弃用 所以看来我必须做好准备 明智的 Ruby 大祭司已经决定这个
  • 跳过第一个元素之后的所有其他元素[重复]

    这个问题在这里已经有答案了 我知道如何在 Java 中做到这一点 但我正在学习 Python 不知道如何做到这一点 我需要实现一个函数 该函数返回一个列表 其中包含列表中的所有其他元素 从第一个元素开始 到目前为止 我不确定如何从这里开始
  • 为什么 C++ 中的字符数组接受非 ASCII 字符?

    所以 我希望能够在我的 C 程序中使用中文字符 并且我需要使用某种类型来保存超出 ASCII 范围的此类字符 但是 我尝试运行以下代码 并且它有效 include
  • Perl:查找数组的特定元素是否是单词或句子

    我有一个包含文本文件的数组 那么如何使用 perl 查找仅包含一个单词的数组元素 假设文件内容存储在 lines my words grep S lines Note 别忘了chomp lines 在进行任何进一步处理之前
  • CSS强制浏览器显示滚动条

    我编写了一个 Web 应用程序 发现当我调整页面大小时 浏览器不会随着窗口缩小而显示它自己的滚动条 这会阻止用户访问内容 我已将正文宽度设置为 500px 并将导航栏设置为white space nowrap 如何让浏览器识别出屏幕右侧有内
  • Android 中片段中按钮的按钮侦听器

    我是 Android 新手 正在尝试自学 但我在 Fragments 方面遇到了困难 我正在创建一个简单的应用程序来学习片段 我认为这可能看起来很愚蠢 但我真的无法让它发挥作用 我想做的就是单击 Fragment One 中的按钮 butt
  • 如何从 &Vec 或 Vec<&T> 创建 &T 的迭代器?

    我有一个有两个变体的枚举 它要么包含对Vec of Strings 或者它包含一个Vec的参考文献Strings enum Foo lt a gt Owned a Vec
  • 在 Android 上用 Java 获取 SQLite SUM

    我是 SQLite 和 Java 的新手 我正在尝试即时学习 我有一列包含一些数值 我想获取它的总和并将其显示在文本视图中 我当前的代码是这样的 public Cursor getTotal return sqliteDatabase2 r
  • 如何根据 DataAnnotation 中的另一个属性验证一个属性

    考虑我有这两个属性 public class Test Required ErrorMessage Please Enetr Age public System Int32 Age get set Required ErrorMessage
  • 在大型 PR 堆栈中深度重命名变量

    我有一个包含 100 次提交的 PR 它将作为许多较小的 PR 提交 在 PR 堆栈的底部 我选择了一个现在觉得很奇怪的变量名称 并且希望在每次提交期间更改它 但不想在各处繁琐地解决合并冲突 有没有办法自动执行此操作 使用一些 cli 命令
  • 调整生成的相机流的大小

    我试图让用户捕获图像并使用图像将其添加到屏幕上 然而 由于内存限制 我还需要将此图像的大小调整为大约一半大小 12x 5MP 图像在手机上永远不会很好 我正在正常启动相机任务 它调用 Completed 事件 但是 当我尝试使用 Decod
  • Highcharts - 有关完整图表宽度的问题

    我正在使用 Highcharts 柱形图 我希望它是 100 宽度响应式图表 容器很简单 div 没有任何格式 当文档加载时 图表始终是固定宽度 600x400px 大小 如果我调整窗口大小或切换到另一个浏览器选项卡 图表将填充宽度并变成响
  • 将 >100K 页面链接在一起而不会受到 SEO 惩罚

    我正在创建一个网站 该网站将审查互联网上数十万个其他网站的隐私政策 它的最初内容是基于我的运行普通爬行 http commoncrawl org 50 亿页网络转储和分析所有隐私政策 https stackoverflow com ques
  • 如何使用 Retrofit 和 RxJava/RxAndroid 处理响应错误?

    我无法弄清楚如何使用改造和 RxAndroid 处理响应错误 如果存在网络错误等 则会调用 onError 但我需要能够获取响应以检查是否存在身份验证错误 相反 我得到的是一个带有空字符串的令牌 但我找不到原因 解决这个问题的最佳方法是什么
  • 如何修复滚动

    我在将工具提示定位在表内的数据列上时遇到一些问题 该表本身位于垂直滚动 div 内 为您提供一点背景 由于我无法控制的遗留问题 我正在开发的页面必须通过固定宽度和高度的 iframe 来显示 我需要显示的数据大约有12列 需要全部显示 一列
  • Django - 为什么syncdb不尊重数据库路由器?

    我已经设置了一个数据库路由器 使用以下命令将不同的应用程序和不同的模型定向到不同的数据库db for read and db for write路由器方法 这非常有效 除了 manage py syncdb不尊重这些路由器设置 When I
  • 作为 JS 的相对初学者 我正在努力尝试找到解决方案 我需要找出无序列表的哪一行被单击 ul li Line 1 li li Line 2 li li Line 3 li ul 我真的不想为每一行添加 onclick 事件 我确信一定有办法