Javascript 使用JQuery按内容选择元素
我目前正在构建一个应用程序,它需要通过元素的内容来标识元素。通常我会使用元素的ID来标识它,但在这种情况下,这是不可能的,因为内容是用户生成的 我有一个PHP脚本,输出一些内容,其中一部分是用户输入的。例如:Javascript 使用JQuery按内容选择元素,javascript,jquery,javascript-events,Javascript,Jquery,Javascript Events,我目前正在构建一个应用程序,它需要通过元素的内容来标识元素。通常我会使用元素的ID来标识它,但在这种情况下,这是不可能的,因为内容是用户生成的 我有一个PHP脚本,输出一些内容,其中一部分是用户输入的。例如: <!-- elementid1 --> This is user generated text. Lorem ipsum... 这是用户生成的文本。乱数假文。。。 我需要能够识别此元素并在单击时触发事件。一旦单击发生,我应该能够轻松地从内容中解析ID(elementid1
<!-- elementid1 -->
This is user generated text. Lorem ipsum...
这是用户生成的文本。乱数假文。。。
我需要能够识别此元素并在单击时触发事件。一旦单击发生,我应该能够轻松地从内容中解析ID(elementid1)
然而,这些元素并不总是div。有时它们是H1到H6等。我将如何检测这些事件
或
或者,我可以遍历所有元素(我不知道怎么做的部分),设置一个ID为的自定义属性,然后为属性等于某个值的元素创建JQuery事件。如果有人知道如何循环遍历每个DOM元素(最好只有子元素,因为父元素也有子元素的内容……),那么这也会起作用
注意事项:
通常我会使用contains()选择器,但由于此ID是注释而不是文本,因此它似乎不起作用。试试这个
$('*').filter(function() {
return $(this).html().match('<!-- elementid1 -->');
});
$('*').filter(函数(){
返回$(this.html().match(“”);
});
.您可以创建自定义选择器,该选择器将使用nodeType=COMMENT\u NODE(8)和特定内容搜索子项。。。但这是一段很长的时间