javascript - 使用 jQuery 和/或 javascript 检索页面上的所有斜体文本片段

标签 javascript jquery css dom-traversal

我希望在页面上运行一个脚本,将每段斜体文本放入一个数组中。

据我了解 jQuery .find() 你无法通过属性获取元素,对吗?

最佳答案

  • 您应该熟悉 filter()方法,这是一个很棒的 jQuery 功能。您可以定义一个过滤函数,用于将 jQuery 集合中的元素减少到适合您需要的元素。

  • 您还需要使用.map()这是另一种 super 方便的方法,可以帮助您从由您编写的函数定义的 jQuery 集合中创建列表。使用 .get() 您可以从此 jQuery 列表对象创建一个普通的 Javascript 数组。

这是一个基本版本,它将收集应用了 font-style: italic 的元素的文本内容:

var arr = 
    $('*') /*look at all elements*/
        .filter(function () { /*filter these elements*/
            return $(this).css('font-style') == 'italic'; /*only keep the italic*/
        })
        .map(function () { /*create a new object using these elements*/
            return $(this).text(); /*store the text of each selected element*/
        })
        .get(); /*convert this to an array*/

jsFiddle Demo

关于javascript - 使用 jQuery 和/或 javascript 检索页面上的所有斜体文本片段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8660250/

相关文章:

javascript - 脚本不会在我的 Bootstrap 模式中工作

javascript - 如何使用phonegap localnotification插件清除通知栏上的项目

javascript - IE 浏览器中的阴影(css3 htc 文件)

css - jQuery UI datepicker - 日期选择器弹出窗口的 css 类

javascript - WordPress 错误 "This widget requires javascript"

Javascript 插入的 DOM 元素未出现在 Safari 中的表单提交事件中

asp.net-mvc - 将原始 html 从 View 传递到 Controller

php - 如何使用来自 PHP 的 jQuery/AJAX 调用遍历 JSON 数组?

javascript - 当我在页脚上使用 slidetoggle 时,如何从顶部推送所有元素?

javascript - 列表项将自动进入第二列,容器空间也会增加