dom 相关问题

通过文档对象模型,将此标记用于有关其他语言与XML / HTML交互的问题。不要将其用作HTML,JavaScript或SAX的简写 - 使用其他标记来表示语言和标记。

从外部 Angular 代码检测页面上 Angular 应用程序中的按钮

我正在尝试向我无法直接控制的基于 Angular 的应用程序中的元素动态添加“帮助”按钮。 该按钮应出现在带有 cla...

回答 1 投票 0

按钮不会出现在 Angular 应用程序中,除非代码在完全渲染后在控制台中运行

我正在尝试向我无法直接控制的基于 Angular 的应用程序中的元素动态添加“帮助”按钮。 该按钮应出现在带有 cla...

回答 1 投票 0

Angular 服务应该操作 DOM 吗?

据我了解,让服务操作 DOM 是很糟糕的做法。 DOM 操作应该保留给指令。我想创建类似于模式的东西,其中服务......

回答 1 投票 0

无法在DOM中添加正确的可编辑li元素

我正在尝试创建类似待办事项列表的东西。应用程序的结构很简单 - 我有一个用于存储任务数据的状态和 useEffect,它在每个任务上添加事件监听器。任务可能是...

回答 1 投票 0

后退和前进按钮未按预期运行。按钮循环正确,但仅使用按钮时会将文本放在末尾。使用键盘可以吗

当您仅使用按钮从胡萝卜位置放置字符时,此代码行为是意外的。它总是将字符放在字符串的末尾。 如果我使用按钮并放置字符...

回答 1 投票 0

为什么要引入window.scrollY和window.scrollX?

据我所知,pageXOffset/pageYOffset 属性从 Netscape 4 时代就已经可用了。 看来scrollX/scrollY 是在 Netscape 6 左右引入的。 替代问题: Q2。难道是……

回答 4 投票 0

如何在Electron中访问DOM元素?

我正在尝试向index.html文件中的按钮添加功能,如下所示: 我在index.html中有一个按钮元素 授权 在应用程序的 main.js 中,我

回答 4 投票 0

如何使用 simplehtmldom 设置表格内容

我正在使用一个名为“simplehtmldom”的解析库。我想做的就是提取表格单元格的文本内容。就这样!看起来很简单...我尝试过的所有结果都在整个FR...

回答 1 投票 0

如何获取div内列表的所有链接?

我有一个带有以下 DOM 树的代码: 我有一个带有以下 DOM 树的代码: <div id="blogPagination"> <div class="pagination"> <ul> <li> <a href="/2" >1</a> </li> <li> <a href="/3" >2</a> </li> </ul> </div> </div> 我正在尝试访问我的标签的 href。我尝试过任何方法都无法达到目标。 使用 jQuery 实现这一目标的最佳方法是什么? 我尝试过: console.log($('#blogPagination div ul > li a ').attr("href")); console.log($('#blogPagination > a ').attr("href")); $('#blogPagination').children('a') console.log($('#blogPagination div ul li a').attr("href")); 没有运气.. 谢谢 编辑: 在 nbrooks 回答之后,这是我迄今为止尝试过的: function bindPagination() { console.log("bind"); $(function() { var links = $("#blogPagination ul a").map(function(e) { e.preventDefault(); return this.href; }).get(); console.log(links); }); 编辑2: 考虑到Syfaro的回答,我也尝试过: $('#blogPagination').find('a').each(function(e) { e.preventDefault(); console.log($(this).attr('href')); }); 没有运气。 编辑3: 我想提供有关此功能的更多详细信息,毕竟它可能会产生重大影响: 为了加载此分页,我使用 Ajax 并将手柄包装到文档就绪函数中: $(document).ready(function(){ // Get the customer service stats var Content = { init: function() { /* this.getHomePosts(); */ this.getBlogPosts(); }, getBlogPosts: function(offset) { if(offset == undefined){ offset = 0; } // GET the events with JSON $.ajax({ type: "POST", data: {}, url: site_url+"/main/blog/"+offset, dataType: "json", success: function(results) { posts = results["posts"].map(function (blogContent) { if( blogContent.picture != '' ) { return { Title: blogContent.title , Picture: Content.urlPostPic + blogContent.picture , Video: '' , Text: blogContent.text , Datetime: blogContent.datetime , } } else { return { Title: blogContent.title , Picture: '' , Video: blogContent.video , Text: blogContent.text , Datetime: blogContent.datetime , } } }); pagination = {pagination: results["pagination"]}; var template = Handlebars.compile( $('#templateBlog').html() ); $('#blogPosts').append( template(posts) ); var template = Handlebars.compile( $('#templatePagi').html() ); $('#blogPagination').append( template(pagination) ); // Here we call bindPagination <=== bindPagination(); } }); }, }; Content.init(); 您可以在 get BlogPosts 函数中看到我调用 BindPagination ,它应该是这个函数,以防止默认行为并根据偏移量(分页系统)调用内容 function bindPagination() { console.log("bind"); var links = $("#blogPagination ul a").map(function(e) { e.preventDefault(); return this.href; }).get(); console.log(links); $('#blogPagination').find('a').each(function(e) { console.log("clicked !"); e.preventDefault(); console.log($(this).attr('href')); // var attr = this.attr(); // var id = attr.replace("/",""); // $('#blogPosts').empty(); // $('#blogPagination').empty(); // Content.getBlogPosts(id); }); } }); 最后一个});代表文档结尾已准备好。 $('#blogPagination').find('a').attr('href'); 这应该找到指定区域中的所有 a 元素,并获取它们的 href,假设您已经设置了 jQuery 和所有这些好东西。 如果你有多个 a 元素,你可以这样做: $('#blogPagination').find('a').each(function() { console.log($(this).attr('href')); }); 这将打印出该 href 中每个 a 的每个 div。 如果需要防止链接更改页面,则需要向 a 元素添加点击处理程序。 $('#blogPagination').on('click', 'a', function(e) { e.preventDefault(); console.log($(this).attr('href')); }); 这将阻止用户被带到该链接,并在单击时获得该链接的 href。 这是你想要的吗? 您可能正在寻找的功能是map。这允许您获取给定的 jQuery 集合,并通过获取每个对象的特定属性并将其作为结果集合中的元素来转换它。 收集数组中的所有 href: $(function() { var links = $("#blogPagination ul a").map(function() { return this.href; }).get(); console.log(links); }); jsFiddle 演示 注意: 子选择器 (el1 > el2) 仅当 el2 是 el1 的直接后代时才起作用。所以至少你的一个例子会失败,因为你的例子与你的 DOM 树不匹配。但是,假设您将其包装在 DOM 就绪处理程序中,console.log($('#blogPagination div ul > li a ').attr("href")); 可以找到(仅)第一个锚标记的 href。 $(function() { ... });方法类似,因为它只会查找直接后代(子代),而不是孙子等。如果您想在特定元素的 DOM 树中查找 all 后代,请使用 children 代替。 普通的 Javascript 解决方案 find 检查您的控制台 - 因为我怀疑存在冲突或 JavaScript 错误导致 jQuery 无法工作。 您的陈述是正确的,应该选择您需要的元素。 Vannila Javascript 解决方案 document.querySelectorAll("div #blogPagination a").forEach((item)=>console.log(item.href)); Array.prototype.map.call(document.querySelectorAll(".myselectorAreaofLinks"), function (e) { return e.getAttribute('href'); }); 方法是jQuery提供的方法,允许您选择具有特定后代元素的元素。要选择 .has() 内包含锚标记的链接,然后检索这些标记,我们可以使用此方法。下面是实现相同目的的示例。div 此示例首先借助 $('div:has(a)').find('a').each(function() { $(this).css('color', 'red'); }); 选择器选择所有包含锚标记的 div。之后,它在每个 :has() 元素上调用 find() 方法,以检索作为其后代的所有锚标记。最后,div方法用于迭代每个链接以添加或更改样式,或执行任何其他操作。

回答 6 投票 0

JavaScript - 数组包含 HTMLDivElements 而不是元素(数字)中的 textContent

我正在开发一款普通的 JavaScript 宾果游戏。我创建宾果卡元素,然后创建一个网格。我创建了 5 个数组,每个数组有 5 个随机数。然后,对于每个数组中的每个数字,我创建一个 div

回答 1 投票 0

从 HTML 链接时 JavaScript 文件不起作用

所以我觉得(并希望)这很简单。我是 javascript 新手,正在尝试让它工作。当我从 html 链接到外部 .js 文件时,它不起作用。然而,当进入

回答 9 投票 0

通过 property 或 setAttribute 设置属性

其中一个比另一个更优选吗?为什么?如果这些被调用数千次,那么性能怎么样? A) element.setAttribute("disabled", true); B) element.disabled = true; T...

回答 5 投票 0

将一个长页面拆分为多页

我正在处理可能有很多页长且具有许多不同格式变量的文档。 大部分工作是在深度嵌套的 OL 标签和表中完成的。 一些ol标签使用类来分割

回答 1 投票 0

如何获取多线span元素的坐标?

我认为这很简单/常见,但经过几个月的寻找后在任何地方都找不到它。我想编辑段落的各个部分,但将输入元素覆盖在正在编辑的部分上...

回答 2 投票 0

preventDefault() 无法按文档运行

MDN 文档说 Event 接口的 PreventDefault() 方法告诉用户代理,如果事件没有得到显式处理,则不应采取默认操作

回答 1 投票 0

为什么currentTarget值为空

我正在学习 event.target 和 event.currentTarget。我想我很清楚两者之间的区别。但陷入了 event.currentTarget 值为 null 的情况。 遵循...

回答 3 投票 0

图片加载错误原因如何处理?

一般来说,图片加载失败有两个原因: 无效的 src。 互联网连接很差。 如何使用 onerror 事件处理这个问题? 编辑:更多详细信息: 所以,更具体地说,我做了一个

回答 1 投票 0

修复“尝试读取 null 上的属性“nodeValue””

我使用以下方法从提要列表中获取内容(在下面的示例中只有 2 个): $urlarray = 数组( 数组( '名称' => 'feed1', 'url' => 'https://example.com/feed1/rss'), 数组('名字...

回答 1 投票 0

如何在本机 JavaScript 中使用边距、填充、边框获取元素宽度/高度(无 jQuery)

寻找可靠的方法来计算元素的宽度/高度+边距-填充+边框仅使用原生JS并且是xbrowser(IE8+)

回答 2 投票 0

JS 操作 DOM,然后 CSS 在刷新时无法正确加载,即使缓存已禁用

问题 你好,我有一些 JS 可以在需要时操纵 DOM 显示/隐藏某些元素。当事件处理程序被触发时它可以完美地工作。问题是当我刷新页面时

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.