IFrame 소스에 XML 오류가 있는 경우 HTML 페이지에서 모든 IFrame을 숨기는 방법은 무엇입니까?
P粉308089080
P粉308089080 2024-01-10 17:33:29
0
1
422

시도 중이에요 iframe 标记内显示 PDF 预览时遇到问题。我有一个页面包含一些 iframes 以在页面中显示 PDF 文件,问题是有时源 URL 中不存在 PDF,因此 iframe 显示 XML 错误,指出 BlobNotFound。如果在 iframe 的源代码中返回该错误,我想隐藏 iframe.

다음 JavaScript 스크립트를 사용해 보았습니다.

으아아아

이 코드는 작동하지만 ID iframe 标记,并且我想重写此代码以一次检查所有 iframe를 통해 지정하는 경우에만 작동합니다.

다음 코드도 시도해 보았습니다.

으아아아

이 코드는 작동해야 하지만 오류가 없음에도 불구하고 어떻게든 모든 iframe을 숨깁니다.

P.S. PDF를 표시할 수 없는 iframe에 대한 XML 오류입니다.

<script>
  const myIframe = document.getElementById('myFrame1');
  fetch('example.xml')
      .then(response => {
          if (!response.ok) {
              throw new Error('XML file not found');
          }
          return response.text();
      })
      .then(xmlString => {
          const parser = new DOMParser();
          const xmlDoc = parser.parseFromString(xmlString, "text/xml");
          // check for errors in the XML content
          const error = xmlDoc.getElementsByTagName("parsererror");
          if (error.length > 0) {
              myIframe.style.display = 'none'; // hide the iframe if there is an error
          }
      })
      .catch(error => {
          console.error(error);
          myIframe.style.display = 'none'; // hide the iframe if there is an error
      });
</script>

P粉308089080
P粉308089080

모든 응답(1)
P粉043295337

이것을 시도해 볼 수 있습니다!

으아악

효과가 있는지 알려주세요.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿