Best JavaScript code snippet using chromy
background.js
Source: background.js
1// Copyright 2020 StevenX911. All rights reserved.2// Use of this source code is governed by a MIT license that can be3// found in the LICENSE file.4'use strict';5// å
ç½®é»è®¤é»æçURL6let defaultblocklist = [7 "://hm.baidu.com/", // -- å±è½æ度追踪8 "://www.google-analytics.com/", // -- å±è½ææ追踪9 "://www.googletagmanager.com/", // -- å±è½ææ追踪10 "://my.openwrite.cn/", // -- å±è½æç«'é
读æ´å¤'11 "://pagead2.googlesyndication.com/", // -- å±è½ææ广å12 "://adservice.google.com", // -- å±è½ææ广å13 "://csdnimg.cn/release/blogv2/dist/pc/js/detail" // -- å±è½æç«'é
读æ´å¤'14];15const TOSTRING = Function.call.bind(Object.prototype.toString);16chrome.runtime.onInstalled.addListener(function () {17 chrome.storage.sync.get('blockurls', function(data) {18 if(data.blockurls != null && TOSTRING(data.blockurls) === '[object Array]'){19 data.blockurls.forEach(x => {20 if(!defaultblocklist.includes(x)){21 defaultblocklist.push(x);22 }23 });24 console.log('onInstalled: Sync chrome datas successfully!');25 } else {26 chrome.storage.sync.set({27 blockurls: defaultblocklist28 }, function () {29 console.log('onInstalled: Firstly run and init datas.');30 });31 }32 });33});34chrome.runtime.onStartup.addListener(function(){35 chrome.storage.sync.get('blockurls', function(data) {36 if(data.blockurls != null && TOSTRING(data.blockurls) === '[object Array]'){37 data.blockurls.forEach(x => {38 if(!defaultblocklist.includes(x)){39 defaultblocklist.push(x);40 }41 });42 console.log('onStartup: Sync chrome datas successfully!');43 } else {44 chrome.storage.sync.set({45 blockurls: defaultblocklist46 }, function () {47 console.log('onStartup: Firstly run and init datas.');48 });49 }50 });51});52chrome.storage.onChanged.addListener(function(changes, namespace) {53 for (var key in changes) {54 var storageChange = changes[key];55 console.log('Storage key "%s" in namespace "%s" changed. ' +56 'Old value was "%s", new value is "%s".',57 key,58 namespace,59 storageChange.oldValue,60 storageChange.newValue);61 if(TOSTRING(storageChange.newValue) === '[object Array]'){62 defaultblocklist = storageChange.newValue;63 console.log('update defaultblocklist');64 }65 }66});67chrome.webRequest.onBeforeRequest.addListener(68 function (details) {69 if(defaultblocklist.length > 0) {70 for(let item of defaultblocklist){71 if(details.url.indexOf(item) != -1){72 return {73 cancel: true74 };75 }76 }77 }78 // console.log(details.url);79 }, {80 urls: ["*://*/*.js*"]81 },82 ["blocking"]...
main.js
Source: main.js
1$(function () {2 const blockUrls = [3 ]45 let changed = true;6 let func = function() {7 if(changed) {8 changed = false;9 10 // Google Search11 $('[data-text-ad="1"]').remove();12 13 // Dummy iframe14 $('iframe:not([src])').remove();15 $('iframe[src="about:blank"]').remove();16 17 for(let url of blockUrls) {18 $('[src*="' + url + '"]').remove();19 $('[style*="' + url + '"]').remove();20 }21 for(let url of blockUrls) {22 $('[href*="' + url + '"] *').css('text-decoration', 'line-through');23 $('[href*="' + url + '"]').css('text-decoration', 'line-through').removeAttr('href');24 }25 }26 };2728 func();29 setInterval(func, 100);3031 let observer = new MutationObserver((mutations) => {32 for(let mutation of mutations) {33 if(mutation.addedNodes) {34 changed = true;35 }36 }37 });38 observer.observe(document.body, {39 childList : true,40 attributes : true,41 characterData: true,42 subtree : true,43 });44 45 46 document.body.addEventListener = function() {};
...
Using AI Code Generation
1const chromy = new Chromy({ port: 9222 });2chromy.chain()3 .end()4 .then(() => chromy.close())5 .catch((e) => console.log(e));6### new Chromy(options)
Using AI Code Generation
1chromy.chain()2 .end()3 .then(function(result) {4 console.log(result);5 })6 .catch(function(err) {7 console.error('Error: ' + err);8 })9 .then(function() {10 chromy.close();11 });12chromy.chain()13 .end()14 .then(function(result) {15 console.log(result);16 })17 .catch(function(err) {18 console.error('Error: ' + err);19 })20 .then(function() {21 chromy.close();22 });23chromy.chain()24 .clearBlockedUrls()25 .end()26 .then(function(result) {27 console.log(result);28 })29 .catch(function(err) {30 console.error('Error: ' + err);31 })32 .then(function() {33 chromy.close();34 });35chromy.chain()36 .setExtraHttpHeaders({37 })38 .end()39 .then(function(result) {
Using AI Code Generation
1var chromy = require('chromy');2var urls = ["www.google.com","www.facebook.com"];3chromy.blockUrls(urls);4chromy.chain()5 .goto('www.google.com')6 .goto('www.facebook.com')7 .goto('www.yahoo.com')8 .end(function(err, data) {9 console.log('end');10 });
Using AI Code Generation
1var chromy = require('chromy');2chromy.chain()3 .blockUrls(['.*google-analytics.com.*'])4 .evaluate(function() {5 return document.title;6 })7 .end()8 .result(function(result) {9 console.log(result);10 });11var chromy = require('chromy');12chromy.chain()13 .blockRequests(['.*google-analytics.com.*'])14 .evaluate(function() {15 return document.title;16 })17 .end()18 .result(function(result) {19 console.log(result);20 });21var chromy = require('chromy');22chromy.chain()23 .blockUrls(['.*google-analytics.com.*'])24 .unblockUrls(['.*google-analytics.com.*'])25 .evaluate(function() {26 return document.title;27 })28 .end()29 .result(function(result) {30 console.log(result);31 });32var chromy = require('chromy');33chromy.chain()34 .blockRequests(['.*google-analytics.com.*'])35 .unblockRequests(['.*google-analytics.com.*'])36 .evaluate(function() {37 return document.title;38 })39 .end()40 .result(function(result) {41 console.log(result);42 });43var chromy = require('chromy');44chromy.chain()45 .clearCache()46 .evaluate(function() {47 return document.title;48 })49 .end()50 .result(function(result) {51 console.log(result);52 });53var chromy = require('chromy');54chromy.chain()55 .goto('
Using AI Code Generation
1const chromy = new Chromy({visible: true});2chromy.chain()3 .wait('body')4 .result(function (result) {5 console.log(result);6 })7 .end()8 .then(function () {9 chromy.close();10 });11[MIT](LICENSE)
Using AI Code Generation
1const Chromy = require('chromy');2const chromy = new Chromy();3chromy.evaluate(() => {4 return document.querySelector('body').innerText;5}).result((v) => {6 console.log(v);7});8chromy.close();9### `new Chromy([options])`
Using AI Code Generation
1const chromy = new Chromy();2chromy.chain()3 .blockUrls(['*.google-analytics.com/*'])4 .evaluate(() => {5 })6 .result(result => {7 })8const chromy = new Chromy();9chromy.chain()10 .blockUrlFragments(['google-analytics'])11 .evaluate(() => {12 })13 .result(result => {14 })15const chromy = new Chromy();16chromy.chain()17 .blockUrlRegex([/.*google-analytics.*/])18 .evaluate(() => {19 })20 .result(result => {21 })22const chromy = new Chromy();23chromy.chain()24 .blockUrls(['*.google-analytics.com/*'])
Check out the latest blogs from LambdaTest on this topic:
Pair testing can help you complete your testing tasks faster and with higher quality. But who can do pair testing, and when should it be done? And what form of pair testing is best for your circumstance? Check out this blog for more information on how to conduct pair testing to optimize its benefits.
How do we acquire knowledge? This is one of the seemingly basic but critical questions you and your team members must ask and consider. We are experts; therefore, we understand why we study and what we should learn. However, many of us do not give enough thought to how we learn.
So, now that the first installment of this two fold article has been published (hence you might have an idea of what Agile Testing is not in my opinion), I’ve started feeling the pressure to explain what Agile Testing actually means to me.
To understand the agile testing mindset, we first need to determine what makes a team “agile.” To me, an agile team continually focuses on becoming self-organized and cross-functional to be able to complete any challenge they may face during a project.
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!