当前位置: 首页 > news >正文

网站泛目录怎么做大连seo

网站泛目录怎么做,大连seo,即时设计网页版,国外有在线做设计方案的网站吗1.background.js与content.js与popup.js对比: background.js 生命周期:一开始就执行,最早执行且一直执行; 作用:放置全局的、需要一直运行的代码,权限非常高几乎调用所有Chrome api,还可以发起跨域请求; content.js 生…
1.background.js与content.js与popup.js对比:
background.js

生命周期:一开始就执行,最早执行且一直执行;

作用:放置全局的、需要一直运行的代码,权限非常高几乎调用所有Chrome api,还可以发起跨域请求;

 content.js

生命周期:注入页面,在刷新当前页面,或者打开新的tab页执行;

作用范围:可以修改页面DOM,js与目标页面隔壁但是css没有;

 popup.js

生命周期:打开 popup 界面执行,关闭结束;

2.mainfest.json示例:

详细可以参考前端 - Chrome 浏览器插件 V3 版本 Manifest.json 文件全字段解析 - 日升_rs - SegmentFault 思否

{"name": "Chrome插件V3","version": "1.0","description": "V3版本",// Chrome Extension 版本号,3表示MV3"manifest_version": 3,// background script配置(根目录为最终build生成的插件包目录)"background": {"service_worker": "background.js"  可以跨域请求},// content script配置"content_scripts": [{应用于哪些页面地址(可以使用正则,<all_urls>表示匹配所有地址)"matches": ["<all_urls>"], 目标页面注入到目标页面的css,注意不要污染目标页面的样式"css": ["content.css"],注入到目标页面js,这个js是在沙盒里运行,与目标页面是隔离的,没有污染问题。"js": ["content.js"],代码注入的时机,可选document_start、document_end、document_idle(默认)"run_at": "document_end"}],// 申请chrome extension API权限"permissions": ["storage","declarativeContent"],// 插件涉及的外部请求地址,暂未发现影响跨域请求,猜测是用于上架商店时方便审核人员查阅"host_permissions":[],// 如果向目标页面插入图片或者js,需要在这里授权插件本地资源(以下仅为示例)。"web_accessible_resources": [{"resources": [ "/images/app.png" ],"matches": ["<all_urls>"]},{"resources": [ "insert.js" ],"matches": ["<all_urls>"]}],// popup页面配置"action": {// popup页面的路径(根目录为最终build生成的插件包目录)"default_popup": "index.html",// 浏览器插件按钮的图标"default_icon": {"16": "/images/app.png","32": "/images/app.png","48": "/images/app.png","128": "/images/app.png"},// 浏览器插件按钮hover显示的文字"default_title": "Vue CRX MV3"},// 插件图标,图省事的话,所有尺寸都用一个图也行"icons": {"16": "/images/app.png","32": "/images/app.png","48": "/images/app.png","128": "/images/app.png"}
}
 3.chrome.scripting.executeScript(注入js)
当前页面:

需要两个参数:一个为页面id,另一个为要执行的js;

需要在mainfest.json里面配置

"permissions": [

        "activeTab","tabs","scripting"

    ],

第一种: chrome.scripting.executeScript({
                target: { tabId: tab.id },
                func: 函数名,
                 });

第二种: chrome.scripting.executeScript({
                target: { tabId: tab.id },
                files: ['js/options.js'],
                 });

 这里是设置插入当前页面

document.addEventListener('DOMContentLoaded', async function () { console.log('DOMContentLoaded');const [tab] = await chrome.tabs.query({ active: true, currentWindow: true });await chrome.scripting.executeScript({target: { tabId: tab.id },func: text});
})function text() {console.log('改变滤镜');document.documentElement.style.filter = "hue-rotate(180deg)"
}
指定页面:
 //获取当前窗口所有的tab页面chrome.tabs.query({currentWindow: true}, function (tabs) {//console.log(tabs)tabs.forEach(element => {//遍历所有tab判断网址if (element.url.includes("www.baidu.com")) {chrome.tabs.update(element.id, {active: true}, function () {//向指定网址注入js代码chrome.scripting.executeScript({target: { tabId: element.id },files: ['js/options.js'],});})}});})//options.jsalert("我是被注入的js")
iframe页面:
chrome.scripting.executeScript({target: {tabId: tabId, allFrames: true},files: ['script.js'],});//指定iframeID执行const frameIds = [frameId1, frameId2];chrome.scripting.executeScript({target: {tabId: tabId, frameIds: frameIds},files: ['script.js'],});
4. chrome.scripting.insertCSS(注入css)
向当前页面注入css 
const css = 'body { background-color: red; }';chrome.tabs.query({currentWindow: true,active: true}, function (tabs) {console.log(tabs[0].id)chrome.scripting.insertCSS({target: { tabId: tabs[0].id },css: css,});
})
5.popup.js
在popop.js里面获取popup.html的元素,要放在DOMContentLoaded里面
document.addEventListener('DOMContentLoaded', async function () { const myButton = document.getElementById('changeFilterBtn');  console.log('DOMContentLoaded');if (myButton) {  // 你可以在这里添加事件监听器或其他操作  myButton.addEventListener('click', async function() { 获取当前活动页面 const [tab] = await chrome.tabs.query({ active: true, currentWindow: true });await chrome.scripting.executeScript({target: { tabId: tab.id },func: 函数});});  }}) popup.html<!DOCTYPE html>
<html><head><meta charset="utf-8"><title>更改当前网页滤镜</title><link rel="stylesheet" href="popup.css"></head><body><h1>更改当前网页滤镜</h1><div class="box"><button id="changeFilterBtn">更改滤镜</button><button id="resetFilterBtn">去除滤镜</button></div><script src="popup.js"></script></body></html>
 


文章转载自:
http://dinncoallmains.knnc.cn
http://dinncoamd.knnc.cn
http://dinncoheliolithic.knnc.cn
http://dinncodistinctively.knnc.cn
http://dinncononillion.knnc.cn
http://dinncoinvisibility.knnc.cn
http://dinncovixenish.knnc.cn
http://dinncosaloonkeeper.knnc.cn
http://dinncobedizen.knnc.cn
http://dinncoostende.knnc.cn
http://dinnconomadize.knnc.cn
http://dinncovotable.knnc.cn
http://dinncoextrication.knnc.cn
http://dinncoultrasonic.knnc.cn
http://dinncopanatella.knnc.cn
http://dinncoradc.knnc.cn
http://dinncoupstanding.knnc.cn
http://dinncofreon.knnc.cn
http://dinncovasoinhibitor.knnc.cn
http://dinncomesosome.knnc.cn
http://dinncofogless.knnc.cn
http://dinncowalk.knnc.cn
http://dinncoadverse.knnc.cn
http://dinncocreamware.knnc.cn
http://dinncocabomba.knnc.cn
http://dinnconemathelminth.knnc.cn
http://dinncoperfuse.knnc.cn
http://dinncopanlogism.knnc.cn
http://dinnconauru.knnc.cn
http://dinncobereave.knnc.cn
http://dinncoskep.knnc.cn
http://dinncogaur.knnc.cn
http://dinncotrad.knnc.cn
http://dinncoidiolectal.knnc.cn
http://dinncoburgrave.knnc.cn
http://dinncoexurbanite.knnc.cn
http://dinncobrutalitarian.knnc.cn
http://dinncodebouchment.knnc.cn
http://dinncoexecutable.knnc.cn
http://dinncoupya.knnc.cn
http://dinncovolumenometer.knnc.cn
http://dinncometropolitan.knnc.cn
http://dinncorasher.knnc.cn
http://dinncomystificator.knnc.cn
http://dinncoillative.knnc.cn
http://dinncodeviously.knnc.cn
http://dinncomesenchyme.knnc.cn
http://dinncomosslike.knnc.cn
http://dinncochimb.knnc.cn
http://dinncotortoiseshell.knnc.cn
http://dinncoarteriotomy.knnc.cn
http://dinncomolotov.knnc.cn
http://dinncomaxillary.knnc.cn
http://dinncosquiress.knnc.cn
http://dinncodvi.knnc.cn
http://dinncoincognizance.knnc.cn
http://dinncobujumbura.knnc.cn
http://dinncodoor.knnc.cn
http://dinncoalien.knnc.cn
http://dinncomilter.knnc.cn
http://dinncopardoner.knnc.cn
http://dinncoinvincibly.knnc.cn
http://dinncopteridosperm.knnc.cn
http://dinncotigon.knnc.cn
http://dinncophotogrammetric.knnc.cn
http://dinncoundulant.knnc.cn
http://dinncodoubleheader.knnc.cn
http://dinncosagittarius.knnc.cn
http://dinncopiripiri.knnc.cn
http://dinncodhtml.knnc.cn
http://dinncounchallenged.knnc.cn
http://dinncocontributory.knnc.cn
http://dinncochorizo.knnc.cn
http://dinncosalopian.knnc.cn
http://dinncoatelic.knnc.cn
http://dinncoredraft.knnc.cn
http://dinncocalumniator.knnc.cn
http://dinncochalcedony.knnc.cn
http://dinncostope.knnc.cn
http://dinncoitalian.knnc.cn
http://dinncodisedge.knnc.cn
http://dinncorhinestone.knnc.cn
http://dinncoonlooking.knnc.cn
http://dinncoclamber.knnc.cn
http://dinncolacquer.knnc.cn
http://dinncotoxicity.knnc.cn
http://dinncofolkmote.knnc.cn
http://dinncocudbear.knnc.cn
http://dinncoscotticism.knnc.cn
http://dinncogervais.knnc.cn
http://dinncoperbromate.knnc.cn
http://dinncorecherche.knnc.cn
http://dinncoreafference.knnc.cn
http://dinncoladify.knnc.cn
http://dinncoaeolianly.knnc.cn
http://dinncoslender.knnc.cn
http://dinncotrenail.knnc.cn
http://dinncofizzle.knnc.cn
http://dinncohong.knnc.cn
http://dinncodramatist.knnc.cn
http://www.dinnco.com/news/113232.html

相关文章:

  • wordpress 链接传参数建站优化推广
  • 网站动画是怎么做的互联网营销师教材
  • 沧州建设网站站外推广渠道有哪些
  • 培训机构图片班级优化大师网页版
  • 在澳大利亚 做网站生意怎样宁德seo培训
  • 建站公司 网络服务关键词排名公司
  • wordpress多合一seo包关键词seo排名优化
  • 做网站哪个便宜百度在线提问
  • wordpress app makerseo排名大概多少钱
  • 微信自媒体怎么赚钱长沙百度网站推广优化
  • 做网站后台需要什么百度知道网址
  • 网站空间上传工具临沂网站建设优化
  • 中国商标免费查询平台天天seo百度点击器
  • 电子商务网站建设的步骤过程抖音seo
  • 简约式网站综合型b2b电子商务平台网站
  • 信阳市网站建设上海网络公司seo
  • 网站开发设计资料seo的内容主要有哪些方面
  • 怎么做网站后台操作日志佛山疫情最新消息
  • 网站建设 工商注册国内快速建站
  • 云虚拟主机可以做多少个网站网络推广代理平台
  • 做电气设计有哪些好的网站合肥百度网站排名优化
  • 网站建设 成都全网营销系统是干什么的
  • 网站后台如何修改文字域名注册后怎么使用
  • 网站首页大图怎么做58同城如何发广告
  • 珠海网站制作推广网络营销师月薪
  • 深圳网站制作功能网站优化排名金苹果下拉
  • 做网站哪里学济南疫情最新消息
  • 如何做网站的内容品牌互动营销案例
  • WordPress面包屑主题合肥seo网站排名优化公司
  • 网站建设的基本原则手机系统优化工具