專案:
在 Playcanvas ( WebGL )中加載帶有 Base64 影像的螢屏
我嘗試做的事情:
當網站加載其他語言(index.html?language=xy)時更改影像
我已經擁有的:
我在我的 WebGL 加載 javascript 中獲得了默認影像。
var logo = document.createElement('img');
logo.src = 'here is my base64 code';
splash.appendChild(logo);
logo.onload = function() {
splash.style.display = 'block';
};
我認為列出物件中的所有語言并使用當前選擇的語言呼叫物件是最佳選擇。
為什么我自己無法弄清楚:
當我剛開始創建 javascript 專案時,我需要查找很多東西,但是當我搜索我的問題時,我會得到類似Base64 編碼 javascript 物件的東西
uj5u.com熱心網友回復:
定義物件中的所有影像
const images = { 'us': 'data:image/jpeg;base64,...', 'nl': 'data:image/jpeg;base64,...', 'fallback': 'data:image/jpeg;base64,...' }決議查詢引數,如果沒有給出則使用回退
const urlSearchParams = new URLSearchParams(window.location.search); const params = Object.fromEntries(urlSearchParams.entries()); let lanuageKey = params['language']; if (!images[lanuageKey]) { lanuageKey = 'fallback'; }添加所需base64的影像
var logo = document.createElement('img'); logo.src = images[lanuageKey]; document.body.appendChild(logo);
將所有這些放在一起,將給出類似于以下代碼段的內容:
注 1:堆疊代碼段無法讀取查詢引數,因此您需要在本地嘗試
注 2:由于最大字符數為 30k,我不得不洗掉base64 的
const images = {
'us': 'data:image/jpeg;base64...',
'nl': 'data:image/jpeg;base64...',
'fallback': 'data:image/jpeg;base64...'
}
const urlSearchParams = new URLSearchParams(window.location.search);
const params = Object.fromEntries(urlSearchParams.entries());
let lanuageKey = params['language'];
if (!images[lanuageKey]) {
lanuageKey = 'fallback';
}
var logo = document.createElement('img');
logo.src = images[lanuageKey];
document.body.appendChild(logo);
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/442132.html
標籤:javascript 目的 网页浏览器
