Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/432.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访问周围的HTML元素_Javascript_Dom_Element - Fatal编程技术网

通过无上下文的JavaScript访问周围的HTML元素

通过无上下文的JavaScript访问周围的HTML元素,javascript,dom,element,Javascript,Dom,Element,我想要的是能够使用JavaScript处理围绕“入口点”的无上下文HTML元素,如标记或事件。我对我能做的事有严格的限制 总结 我有多个用户生成的HTML块,它们需要在加载时自行处理。 这些块的内容可以包含具有类似行为的类似块。 内容还需要复制一次,可能需要重新开始执行第2节中提到的脚本。 这些块由静态模板生成,最初不能包含唯一的标识数据,如ID或随机属性值。 这些块也可以通过AJAX生成,这是我无法控制的。他们需要照顾好自己的外表,而不依赖任何执行命令。 出身背景 这是一个论坛软件,其中某些B

我想要的是能够使用JavaScript处理围绕“入口点”的无上下文HTML元素,如标记或事件。我对我能做的事有严格的限制

总结 我有多个用户生成的HTML块,它们需要在加载时自行处理。 这些块的内容可以包含具有类似行为的类似块。 内容还需要复制一次,可能需要重新开始执行第2节中提到的脚本。 这些块由静态模板生成,最初不能包含唯一的标识数据,如ID或随机属性值。 这些块也可以通过AJAX生成,这是我无法控制的。他们需要照顾好自己的外表,而不依赖任何执行命令。 出身背景 这是一个论坛软件,其中某些BBCode标记,比如[tag]content[/tag]被替换为固定的HTML。我无法访问任何服务器端脚本,因此替换内容与上下文无关,即始终相同。 例如,[tag]{content}[/tag]会变成类似于:

<span ...>
  ...
  {content}
  ...
  <!-- script entry point -->
</span>
脚本输出的内容包含在选项卡按钮本身中,这些按钮将链接到各自的内容

限制 我不能用身份证。所有内容都必须是模板的无上下文替换。 [tag]可以嵌套。 脚本需要复制部分内容,其中部分内容可以是类似的脚本,等等。这会弄乱已经在外部标记对上运行的脚本。我有一个自下而上的解决方案来解决这个问题,但它依赖于在任何深度启动脚本,而不必担心类似的环境。另一种说法 这些标签可以在任何时候使用AJAX动态加载到页面上的任何帖子中

模板中的任何位置都可以有脚本,以使问题更容易解决

我试过的 使用JS在加载时动态输出,搜索给定ID并使用其位置查找周围的元素。当我动态加载页面和嵌套标记时,它不起作用。 为周围的元素指定一个类,并找到其类型的最后一个元素。这不起作用,因为在页面加载后,我们可能会在页面中间进行更新。 我宁愿避免的解决方案 使用,我可以运行一个脚本并使用它访问周围的标记。但我不想用断开的链接和错误来解决一个简单而相关的问题。
[tabspace]
  [tab]content 1[/tab]
  [tab]
    content 2, and
    nested tabs:
    [tabspace]...[/tabspace]
  [/tab]
[/tabspace]