首頁 > 軟體

smartbanner.js實現可客製化智慧應用橫幅使用範例

2023-03-05 14:01:35

引言

smartbanner.js 適用於 iOS 和 Android 的可客製化智慧應用橫幅(smart app banner)。簡單易用,不依賴任何框架,怎麼使用官方檔案也寫的很清楚,我就不過多介紹。 傳送門

基本用法

<!-- Start SmartBanner configuration -->
<meta name="smartbanner:title" content="Smart Application">
<meta name="smartbanner:author" content="SmartBanner Contributors">
<meta name="smartbanner:price" content="FREE">
<meta name="smartbanner:price-suffix-apple" content=" - On the App Store">
<meta name="smartbanner:price-suffix-google" content=" - In Google Play">
<meta name="smartbanner:icon-apple" content="https://s3.ap-northeast-1.wasabisys.com/img.it145.com/202303/apple-store-iconkpme0syykbj.png">
<meta name="smartbanner:icon-google" content="https://s3.ap-northeast-1.wasabisys.com/img.it145.com/202303/google-play-iconad1cqehn5qo.png">
<meta name="smartbanner:button" content="VIEW">
<meta name="smartbanner:button-url-apple" content="https://ios/application-url">
<meta name="smartbanner:button-url-google" content="https://android/application-url">
<meta name="smartbanner:enabled-platforms" content="android,ios">
<meta name="smartbanner:close-label" content="Close">
<!-- End SmartBanner configuration -->

參照 JavaScript 和 CSS:

<link rel="stylesheet" href="node_modules/smartbanner.js/dist/smartbanner.min.css" rel="external nofollow" >
<script src="node_modules/smartbanner.js/dist/smartbanner.min.js"></script>

高階用法

如何根據系統語言動態修改橫幅文案

其實就是通過js去修改meta

if (navigator.language?.includes("zh")) {
    document
     .querySelector('meta[name="smartbanner:button"]')
     .setAttribute("content", "檢視");
}

如何自己處理點選按鈕事件

需要先移除對應的meta,禁用按鈕點選事件

 <!-- <meta name="smartbanner:button-url-apple" content="https://ios/application-url">
 <meta name="smartbanner:button-url-google" content="https://android/application-url"> -->
document.addEventListener("smartbanner.view", () => {
  document.querySelector(".js_smartbanner__button").onclick = () => false;
});
document.addEventListener("smartbanner.clickout", () => {
  // 在這裡做其它操作,比如手動關閉橫幅
  smartbanner.exit();
});

如何在微信瀏覽器內不顯示橫幅

先新增meta禁用自動新增到DOM,再呼叫api手動新增到DOM。判斷微信瀏覽器的程式碼我就不貼出來了。

<meta name="smartbanner:api" content="true">
const apiHandler = () => {
  if (is_weixn()) return;
  setTimeout(() => {
    if (smartbanner) smartbanner.publish();
  }, 500);
};
window.onload = apiHandler;

以上就是smartbanner.js實現可客製化智慧應用橫幅使用範例的詳細內容,更多關於smartbanner.js可客製化智慧橫幅的資料請關注it145.com其它相關文章!


IT145.com E-mail:sddin#qq.com