我不是 HTML 编码员,有人要求我帮助解决一个问题。我认为这需要 5 秒,但我有一个错误。它只是一个带有 2 个选项卡的 html 页面,每个选项卡都嵌入了 Jotform iFrame。切换到第二个选项卡(非默认)时,它不会加载。我已经在选项卡之间交换了默认标记,它也是如此。调试器仅显示以下违规但它不是错误:
[违规] 向“DOMNodeInserted”事件添加了同步 DOM 突变侦听器。考虑使用 MutationObserver 使页面更具响应性。
代码片段
<html>
<body>
<div class="tab">
<button class="tablinks active" onclick="openTab(event, 'ITSupport')" ><B>IT Support</B></button>
<button class="tablinks" onclick="openTab(event, 'ProjectRequest')" ><B>Project Request</b></button>
</div>
<div id="ITSupport" class="tabcontent">
<iframe
id="JotFormIFrame-yyyyyyyyy"
title="Service Desk"
onload="window.parent.scrollTo(0,0)"
allowtransparency="true"
allowfullscreen="true"
allow="geolocation; microphone; camera"
src="https://form.myjotform.com/yyyyyy"
frameborder="0"
style="
min-width: 100%;
height: 100%;
border:none;"
scrolling="no"
>
</iframe>
</div>
<div id="ProjectRequest" class="tabcontent">
<iframe
id="JotFormIFrame-xxxx"
title="Project Request Form"
onload="window.parent.scrollTo(0,0)"
allowtransparency="true"
allowfullscreen="true"
allow="geolocation; microphone; camera"
src="https://form.jotform.com/xxxxxxx"
frameborder="0"
style="
min-width: 100%;
height: 100%;
border:none;"
scrolling="no"
>
</iframe>
</div>
<script>
function openTab(evt, tabName) {
var i, tabcontent, tablinks;
tabcontent = document.getElementsByClassName("tabcontent");
for (i = 0; i < tabcontent.length; i++) {
tabcontent[i].style.display = "none";
}
tablinks = document.getElementsByClassName("tablinks");
for (i = 0; i < tablinks.length; i++) {
tablinks[i].className = tablinks[i].className.replace(" active", "");
}
var allIds = document.querySelectorAll('#' + tabName);
allIds[allIds.length - 1].style.display = "block";
evt.currentTarget.className += " active";
}
document.querySelector('.tablinks.active').click();
</script>
</body>
</html>