Javascript getElementById在IE 11的DOM树中确定的非常特定的ID上失败,可能是Edge-为什么?

Javascript getElementById在IE 11的DOM树中确定的非常特定的ID上失败,可能是Edge-为什么?,javascript,internet-explorer-11,microsoft-edge,getelementbyid,Javascript,Internet Explorer 11,Microsoft Edge,Getelementbyid,在Microsoft IE和(根据评论)Edge中,ID为“extTabsBodyEleFile1273551781_renderTo”的ID上的getElementById()失败 TL;DR 似乎有特定的字符串边缘返回null如果您尝试选择它们,我发现有3个字符串在此小提琴中无法选择: 我已经运行了1273到1290个ID的测试,只找到了3个,但我想可能还有更多,我不知道为什么这些字符串如此重要以至于edge不允许搜索它们 原产地 我不能发表评论,但这真的让我很恼火,所以我不得不做更多的测

在Microsoft IE和(根据评论)Edge中,ID为“extTabsBodyEleFile1273551781_renderTo”的ID上的
getElementById()
失败

TL;DR

似乎有特定的字符串边缘返回null如果您尝试选择它们,我发现有3个字符串在此小提琴中无法选择:

我已经运行了1273到1290个ID的测试,只找到了3个,但我想可能还有更多,我不知道为什么这些字符串如此重要以至于edge不允许搜索它们

原产地

我不能发表评论,但这真的让我很恼火,所以我不得不做更多的测试,看起来不管你对这个字符串做什么更改,它都会工作,但对这个字符串不起作用

添加/删除任何字母/数字都可以。 将下划线前的最后一个数字改为2而不是1也可以。 事实上,将任何数字更改为不同的数字是有效的

看起来edge不喜欢那个特定的字符串是有原因的,我真的想知道为什么

编辑1

在做了一些更基本的测试之后,我运行了下一个小提琴:

运行它并查看控制台后,您可以看到,他还没有找到另外两个ID:

not found:  extTabsBodyEleFile1273351781_renderTo
not found:  extTabsBodyEleFile1273451781_renderTo
not found:  extTabsBodyEleFile1273551781_renderTo
因此,我认为没有明显的模式可以避免,正如其他人所建议的那样,但是需要搜索一个非常特定的字符串,好像您试图将相同的字符串设置为类一样,它将无法正常工作

FYI

我是在Windows10的边缘浏览器上测试这个,而不是在IE11上

Microsoft Edge 42.17134.1.0
Microsoft EdgeHTML 17.17134 

这可以在EdgeHTML中复制,但您确定没有将IE和Edge混淆吗?这些版本字符串对应于Windows 8.1上的IE11。Edge不是Windows 8.1浏览器。
SCRIPT5022:SCRIPT5022:SecurityError
:-!我创建了一个Microsoft反馈中心项目:-它可能有助于投票it@BoltClock你说得对,是IE 11。可能被开发人员工具中“仿真”选项卡中的“文档模式:边缘”弄糊涂了。编辑accordingly@Mike“Pomax”Kamermans这是我创造的,不是ms特有的。如前所述,我可以改变它,但只要我不知道真正的原因是什么以及如何避免问题,这似乎只是在问题再次出现之前的一个延迟,我在我的webappSame中为我生成了数千个ID,至少这样它就不会再次发生-必须有一种模式来避免看到我的更新,我确实发现了一些额外的字符串,它对@Klauecan不起作用。我可以用IE 11确认你的更新。好奇。从1274开始再次运行测试。。没有结果。因为1274的所有ID都是“可选择的”,我在1273到1290之间做了一些测试,只找到了edge无法处理的3个ID,我相信如果您继续查找,您可以找到更多。我将尝试通过内部Chanel通知MSFT开发人员有关此问题。
Microsoft Edge 42.17134.1.0
Microsoft EdgeHTML 17.17134