Javascript:如何判断跨度是否是段落中的第一件事?

纳尔科

我是一名目标C程序员,并且在我的最新项目中需要一些Javascript。一个星期前,我从未使用过任何JavaScript。我已经花了几个小时解决这个特定的问题,无法解决。我对javascript几乎一无所知,因此,如果我犯了任何基本错误(很可能),我会提前道歉。

基本上我有一个html页面。页面中有许多自定义跨度标签。我需要一个函数来告诉我是否某个特定的span标签是段落中的第一件事(而不仅仅是第一个span)。例如,如果html看起来像这样:

<p><span class="myClass">The</span> quick brown fox jumps over the lazy <span class="myClass">dog.</span></p>

然后我用

var spanList = Document.getElementsByClassName("myClass");

我需要一个返回TRUE的函数

isFirstInParagraph(spanList[0]);  //ie. the word "The"

和FALSE为

isFirstInParagraph(spanList[1]);  // ie. the word "dog."

在以下情况下,两个跨度都将返回FALSE,因为这两个都不是该段中的第一件事。

<p>The <span class="myClass">quick</span> brown fox jumps over the lazy <span class="myClass">dog.</span></p>

我希望附加一些半有效的代码,但是我所做的一切都接近完成。在我看来,解决此问题的一种方法是找到SPAN相对于段落的范围偏移,并查看其是否为零。但是我花了几个小时阅读文档,无法弄清楚。我忍不住认为这是因为我对javascript / html中的一般概念和术语缺乏理解。

可能相关的事情:

  • 段落可能有也可能没有第一个单词inset。
  • 并非所有myClass范围都一定在一个段落中,例如,它们可能在标题中。
  • myClass范围可以是斜体或粗体等。
  • 这需要是javascript而不是查询。
  • 它用于UIWebview中的本机iOS应用程序中。我会认为兼容Safari的东西会起作用。

提前致谢

PrzemG

获取所有跨度的列表:

spanList = document.getElementsByTagName("span"); // all spans in document

然后函数应如下所示:

function isFirstInParagraph(span)
    {
        var p = span.parentNode;

        if (p.nodeName === "P") // is span contained within 'p'
        {
            if (p.firstChild === span)
                return true;
            else
                return false;
        }
        else
        {
            return false;
        }

    }

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

首先在HashMap中获得第一件事?

来自分类Dev

首先在HashMap中获得第一件事?

来自分类Dev

全新安装Ubuntu 14.04.3的第一件事

来自分类Dev

IIS重写:仅在域之后的第一件事时匹配

来自分类Dev

使用jQuery检查某个元素是否是另一个元素中的第一件事

来自分类Dev

联网错误-您要检查以查找出什么问题的第一件事是什么?

来自分类Dev

我刚刚克隆了一个仓库,它在Github中说的第一件事是“未提交的更改”?与CRLF不相关

来自分类Dev

我刚刚克隆了一个仓库,它在Github中说的第一件事是“未提交的更改”?与CRLF不相关

来自分类Dev

为什么javascript返回另一件事,而php又返回另一件事?

来自分类Dev

尝试在我的JavaScript代码中理解“ this”(一件事有效,另一件事无效)

来自分类Dev

如何选择一件事,如果条件为假,则选择另一件事

来自分类Dev

在AssertJ中测试一件事是否成立

来自分类Dev

如何选择数组中的最后一件事?

来自分类Dev

我如何只能从文本文件中读取一件事?

来自分类Dev

如何根据值在不同列中显示一件事的结果

来自分类Dev

如何使jButton在第一次单击时做一件事,然后在第二次单击时做另一件事?

来自分类Dev

如何让循环在第一时间做一件事而在其他时间做另一件事

来自分类Dev

如何打开一件事然后又打开另一件事

来自分类Dev

在正则表达式中,捕获一件事,或另一件事,或两者兼而有之

来自分类Dev

Windows用户只是一件事

来自分类Dev

制作只做一件事的函数

来自分类Dev

在iPad上显示一件事,在Apple TV上显示另一件事?

来自分类Dev

JLabel将文本从一件事更改为另一件事

来自分类Dev

“哪个”报告一件事,实际命令是另一件事

来自分类Dev

用来检查URL内容并仅保留一件事的Javascript代码

来自分类Dev

如何在同一件事上显示字符串和变量?

来自分类Dev

如何通过一件事搜索列表视图中的数据?

来自分类Dev

android中的任务堆栈和后堆栈是同一件事吗

来自分类Dev

包括目录中的所有内容,但只有一件事

Related 相关文章

  1. 1

    首先在HashMap中获得第一件事?

  2. 2

    首先在HashMap中获得第一件事?

  3. 3

    全新安装Ubuntu 14.04.3的第一件事

  4. 4

    IIS重写:仅在域之后的第一件事时匹配

  5. 5

    使用jQuery检查某个元素是否是另一个元素中的第一件事

  6. 6

    联网错误-您要检查以查找出什么问题的第一件事是什么?

  7. 7

    我刚刚克隆了一个仓库,它在Github中说的第一件事是“未提交的更改”?与CRLF不相关

  8. 8

    我刚刚克隆了一个仓库,它在Github中说的第一件事是“未提交的更改”?与CRLF不相关

  9. 9

    为什么javascript返回另一件事,而php又返回另一件事?

  10. 10

    尝试在我的JavaScript代码中理解“ this”(一件事有效,另一件事无效)

  11. 11

    如何选择一件事,如果条件为假,则选择另一件事

  12. 12

    在AssertJ中测试一件事是否成立

  13. 13

    如何选择数组中的最后一件事?

  14. 14

    我如何只能从文本文件中读取一件事?

  15. 15

    如何根据值在不同列中显示一件事的结果

  16. 16

    如何使jButton在第一次单击时做一件事,然后在第二次单击时做另一件事?

  17. 17

    如何让循环在第一时间做一件事而在其他时间做另一件事

  18. 18

    如何打开一件事然后又打开另一件事

  19. 19

    在正则表达式中,捕获一件事,或另一件事,或两者兼而有之

  20. 20

    Windows用户只是一件事

  21. 21

    制作只做一件事的函数

  22. 22

    在iPad上显示一件事,在Apple TV上显示另一件事?

  23. 23

    JLabel将文本从一件事更改为另一件事

  24. 24

    “哪个”报告一件事,实际命令是另一件事

  25. 25

    用来检查URL内容并仅保留一件事的Javascript代码

  26. 26

    如何在同一件事上显示字符串和变量?

  27. 27

    如何通过一件事搜索列表视图中的数据?

  28. 28

    android中的任务堆栈和后堆栈是同一件事吗

  29. 29

    包括目录中的所有内容,但只有一件事

热门标签

归档