The main difference between the two pages is the method of sending messages. Recieving messages is the same in both.
Send messages to iframe using iframeEl.contentWindow.postMessage
Recieve messages using window.addEventListener('message')
| payload: | |
| # > SEFLPORXY | |
| - PROCESS-NAME,com.google.android.youtube | |
| - PROCESS-NAME,com.google.android.youtube.tv | |
| - DOMAIN-SUFFIX,docker.io | |
| - DOMAIN-SUFFIX,sentry.io | |
| - DOMAIN-KEYWORD,openai |
| <!DOCTYPE html> | |
| <html lang="en"> | |
| <head> | |
| <meta charset="UTF-8"> | |
| <title>Normal</title> | |
| <style> | |
| .styled-table { | |
| border-collapse: collapse; | |
| margin: 25px 0; | |
| font-size: 0.9em; |
| <div id="demo"> | |
| <h1>Material Design Responsive Table</h1> | |
| <h2>Table of my other Material Design works (list was updated 08.2015)</h2> | |
| <!-- Responsive table starts here --> | |
| <!-- For correct display on small screens you must add 'data-title' to each 'td' in your table --> | |
| <div class="table-responsive-vertical shadow-z-1"> | |
| <!-- Table starts here --> | |
| <table id="table" class="table table-hover table-mc-light-blue"> | |
| <thead> |
| <div id="demo"> | |
| <h1>Material Design Responsive Table</h1> | |
| <h2>Table of my other Material Design works (list was updated 08.2015)</h2> | |
| <!-- Responsive table starts here --> | |
| <!-- For correct display on small screens you must add 'data-title' to each 'td' in your table --> | |
| <div class="table-responsive-vertical shadow-z-1"> | |
| <!-- Table starts here --> | |
| <table id="table" class="table table-hover table-mc-light-blue"> | |
| <thead> |
| <div id="demo"> | |
| <h1>Material Design Responsive Table</h1> | |
| <h2>Table of my other Material Design works (list was updated 08.2015)</h2> | |
| <!-- Responsive table starts here --> | |
| <!-- For correct display on small screens you must add 'data-title' to each 'td' in your table --> | |
| <div class="table-responsive-vertical shadow-z-1"> | |
| <!-- Table starts here --> | |
| <table id="table" class="table table-hover table-mc-light-blue"> | |
| <thead> |
| /* Exercise: Loops and Functions #43 */ | |
| package main | |
| import ( | |
| "fmt" | |
| "math" | |
| ) | |
| func Sqrt(x float64) float64 { | |
| z := float64(2.) |
| function translateError(msg) { | |
| var newErr = new Error(msg); // placed here to get correct stack | |
| return e => { | |
| newErr.originalError = e; | |
| throw newErr; | |
| } | |
| } | |
| async function asyncTask() { | |
| const user = await UserModel.findById(1).catch(translateError('No user found')) |
| npm set registry https://registry.npm.taobao.org # 注册模块镜像 | |
| npm set disturl https://npm.taobao.org/dist # node-gyp 编译依赖的 node 源码镜像 | |
| ## 以下选择添加 | |
| npm set sass_binary_site https://npm.taobao.org/mirrors/node-sass # node-sass 二进制包镜像 | |
| npm set electron_mirror https://npm.taobao.org/mirrors/electron/ # electron 二进制包镜像 | |
| npm set puppeteer_download_host https://npm.taobao.org/mirrors # puppeteer 二进制包镜像 | |
| npm set chromedriver_cdnurl https://npm.taobao.org/mirrors/chromedriver # chromedriver 二进制包镜像 | |
| npm set operadriver_cdnurl https://npm.taobao.org/mirrors/operadriver # operadriver 二进制包镜像 | |
| npm set phantomjs_cdnurl https://npm.taobao.org/mirrors/phantomjs # phantomjs 二进制包镜像 |