iT邦幫忙

0

如何JS在載入界面全屏顯示? 【100】

  • 分享至 

  • xImage

詢問AI得到以下code,但是在頁面載入時調用會出現權限不足被block問題

要實現在進入頁面時自動全屏顯示,您可以在 JavaScript 中使用 Fullscreen API。以下是一個簡單的示例:

HTML:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Auto Fullscreen</title>
</head>
<body>
  <h1>自動全屏示例</h1>
  <script src="script.js"></script>
</body>
</html>

JavaScript (script.js):

document.addEventListener("DOMContentLoaded", function() {
  openFullscreen();
});

function openFullscreen() {
  const elem = document.documentElement;

  if (elem.requestFullscreen) {
    elem.requestFullscreen();
  } else if (elem.mozRequestFullScreen) { // Firefox
    elem.mozRequestFullScreen();
  } else if (elem.webkitRequestFullscreen) { // Chrome, Safari and Opera
    elem.webkitRequestFullscreen();
  } else if (elem.msRequestFullscreen) { // IE/Edge
    elem.msRequestFullscreen();
  }
}

這段代碼會在文檔加載完成後觸發 openFullscreen 函數,使頁面全屏顯示。請注意,某些瀏覽器可能會阻止自動全屏操作,因此建議在用戶與頁面互動時(例如點擊按鈕)觸發全屏功能。

hokou iT邦好手 1 級 ‧ 2023-11-28 09:31:16 檢舉
你不照著建議用個按鈕之類的手動觸發嗎?
有可能是強制觸發,造成瀏覽器擋掉
JS 砍掉這一行代碼
document.addEventListener("DOMContentLoaded", function() {
openFullscreen();
});
HTML BODY 內加入這行,
<a href="#" onClick="openFullscreen()">Full Screen Mode</a>
requestFullscreen 在2012年就被W3C 警告,因此該年所有的瀏覽器都取消了這個事件直接調用,
必須在USER行為確認之後才能用,最簡單的方法就是用A LINK這種,或是開一個按鍵事件也行
小MIS iT邦研究生 1 級 ‧ 2023-11-29 08:20:50 檢舉
謝謝您們,我目前改寫 windows app 解決
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 個回答

1
㊣浩瀚星空㊣
iT邦大神 1 級 ‧ 2023-11-28 17:16:11
最佳解答

全屏事件,已被列為不得自動使用。
早期還可以寫在按鍵或是A連結上。然後去自動觸發 click 事件處理。
但該行為在後期也被禁用了。

我目前的做法是,在頁面載入後,會先有一個彈跳的視窗出現。
由使用者去按「確認」後去觸發全屏。

之前也試過 openWindow 的方法。來做一個類似全屏的視窗展開。
不過這招最低限度還是可以看到連結列。且得要另開視窗才能做到。
並不是很理想就是了。

小MIS iT邦研究生 1 級 ‧ 2023-11-29 08:20:34 檢舉

謝謝您,我目前改寫 windows app 解決
請問您有付款方式嗎?

感謝~~
你可以將要給我的,隨意捐贈任何一個公益團體即可。

基本上我不排斥你這樣的行為。
但其實也不太願意這種風氣出現就是了。

但如果要說不收的話,也覺得有點太對不起您的感激了。
所以有心要給我的話,就直接捐贈吧。
但還是感謝您。

小MIS iT邦研究生 1 級 ‧ 2023-11-29 11:35:24 檢舉

image
您好,以您的名義捐款了 ㊣浩瀚星空㊣

1
souda
iT邦好手 1 級 ‧ 2023-11-28 22:34:51

我會用linux觸發 全屏瀏覽器

小MIS iT邦研究生 1 級 ‧ 2023-11-29 08:20:41 檢舉

謝謝您,我目前改寫 windows app 解決

souda iT邦好手 1 級 ‧ 2023-11-29 09:13:30 檢舉

我過去做 ESOP就是用Linux 開機後無桌面直接只有瀏覽器並指定網址!
主機端接收到 ERP呼叫後再傳給Linux 去開啟ESOP.要更換或停止都是由ERP控制指令. 以上供您參考.

我要發表回答

立即登入回答