Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用jQuery查找活动标记格式?_Javascript_Jquery_Html - Fatal编程技术网

Javascript 如何使用jQuery查找活动标记格式?

Javascript 如何使用jQuery查找活动标记格式?,javascript,jquery,html,Javascript,Jquery,Html,我有一个示例代码的情况如下: <html> <head> <title>Untitled Document</title> </head> <body> <p> <h1>The header</h1> <div> matter ia always matter matter ia <strong>b

我有一个示例代码的情况如下:

<html>
  <head>
    <title>Untitled Document</title>
  </head>
  <body>
    <p>
      <h1>The header</h1>
      <div>
        matter ia always matter matter ia <strong>bold matter</strong> matter matter <em>italics matter</em>matter ia <em><strong>bold italics matter</strong></em>lways matter
      </div>
    </p>
  </body>
</html>

无标题文件

标题
物质总是物质,物质总是物质,物质总是物质,物质总是物质


当我使用jQuery单击
“粗体斜体”时,我只是试图检索特定的标记,如
body->p->div->em->strong
。是否有任何标准方法可根据单击事件进行检索?

如果您想获取所单击元素的标记名,则可以使用:

$('*').click(function(e) {
    e.stopPropagation();
    console.log($(this).prop('tagName'));    
});

我不完全确定你想要完成什么。如果您试图检索包含文本的标记本身,我建议您在有问题的文本周围放置一个
标记,然后执行
onclick=“function()”
,或者简单地将onclick放在
标记上

就JQuery/Javascript而言,如果您想要检索内容,它看起来

var foo = document.getElementById.innerHTMl("id");
但是,这要求您在标记中有一个id,如果不是的话,它可能是最好的 检索标记内内容的“标准”方法

在阅读了你的评论之后,我正在编辑这篇文章: 获取父元素的最佳方法是使用JQUery
.parent()
函数。我想你会递归地说这样的话:

var foo = $("nameofelement").parent();

我希望这更多的是你想要的。

谢谢大家的贡献。最后我用下面的代码自己做了

$(document.body).click(function(e){
    var Tags=[], Target=e.target, stat_msg="";

    Tags.push(Target.tagName);
    while($(Target).parent().get(0).tagName!=="BODY")
    {
        Tags.push($(Target).parent().get(0).tagName);
        Target=$(Target).parent();
    }
    Tags.push("BODY");

    for(i=Tags.length;i>0;i--)
        stat_msg=stat_msg+Tags[i-1]+" ";

    alert(stat_msg);
});

在jquery中使用parents()实际上,当我单击某些标记内容时,我希望向后完全跟踪父标记。如果可以,您需要打开浏览器控制台以查看结果。别担心,这是
警报
版本:谢谢你的快速回复。但是我想显示所有的父标签,比如body->p->div->em->strong我想创建一个带有状态栏的所见即所得编辑器。当用户单击某些文本时,状态栏将显示带有我之前发布的代码的父标记。但当用户在键盘上移动光标时,它就不起作用了。有什么帮助吗?