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')
var path = require('path'); | |
var useDefaultConfig = require('@ionic/app-scripts/config/webpack.config.js'); | |
var procEnv = process.env.IONIC_ENV; | |
module.exports = function () { | |
useDefaultConfig[procEnv].resolve.alias = { | |
"@app/env": path.resolve('./src/environments/environment' + (process.env.IONIC_ENV === 'prod' ? '' : '.' + process.env.IONIC_ENV) + '.ts') | |
}; |
Shader powered image transition
Forked from Szenia Zadvornykh's Pen THREE Text Animation #1.
A Pen by TAYLOR ENGEL on CodePen.
<div class="item-image"> | |
<div class="shopee-item-card__badge-wrapper"> | |
<div class="shopee-badge shopee-badge--fixed-width shopee-badge--promotion"> | |
<div class="shopee-badge--promotion__label-wrapper shopee-badge--promotion__label-wrapper--vi-VN"> | |
<span class="percent">16%</span> | |
<span class="shopee-badge--promotion__label-wrapper__off-label shopee-badge--promotion__label-wrapper__off-label--vi-VN">giảm</span> | |
</div> | |
</div> | |
</div> | |
</div> |
declare global { | |
interface Array<T> { | |
groupBy(elem: T): Array<T>; | |
} | |
} | |
Array.prototype.groupBy = function(prop) { | |
return this.reduce(function(groups, item) { | |
const val = item[prop] |
nssm install SeleniumHub java -jar C:\Selenium\selenium-server-standalone-2.48.2.jar -role hub | |
nssm start SeleniumHub | |
nssm install SeleniumNode1 java -jar C:\Selenium\selenium-server-standalone-2.48.2.jar -role node -hub http://localhost:4444/grid/register -Dwebdriver.chrome.driver=C:\Selenium\chromedriver.exe | |
nssm set SeleniumNode1 DependOnService SeleniumHub | |
nssm start SeleniumNode1 | |
nssm install SeleniumNode2 java -jar C:\Selenium\selenium-server-standalone-2.48.2.jar -role node -hub http://localhost:4444/grid/register -Dwebdriver.chrome.driver=C:\Selenium\chromedriver.exe | |
nssm set SeleniumNode2 DependOnService SeleniumHub | |
nssm start SeleniumNode2 |
{"lastUpload":"2018-03-14T07:28:48.408Z","extensionVersion":"v2.9.0"} |
async login(driver:WebDriver) { | |
await driver.get('https://tiki.vn'); | |
let loginElement = await driver.findElement(By.id('header-user')); | |
let strJavaScript = "var element = arguments[0];" | |
+ "var mouseEventObj = document.createEvent('MouseEvents');" | |
+ "mouseEventObj.initEvent( 'mouseover', true, true );" | |
+ "element.dispatchEvent(mouseEventObj);"; | |
await driver.executeScript(strJavaScript, loginElement); | |
} |
getHTML() { | |
return this.http.request('GET','api/account/login',{observe:'response',responseType:'text'}) | |
.map((res:HttpResponse<any>) => { console.log(res.body); return res.body }) | |
} |
cssVariable: string = ` | |
#header, #breadcrumb-wrapper, #footer,#mobile-bottom-navigation, #back-to-top { | |
display:none; | |
} | |
body { | |
padding-bottom: 80px; | |
padding-top: 1px; | |
} | |
` |