前言:

由于业务需求,将页面内容转成pdf,前端需要提供整个页面的dom元素提供给后端,但样式并不是在行内而是在<style>标签里。


解决方案:

通过原生属性 document.styleSheets 读取vue单页面组件加载过的所有css样式

const cssBlock = document.styleSheets


有了获取到的css样式表就能遍历去找到我需要的,由于是伪数组,我们先用ES6解构一下;点开可以发现他的顺序是从页面初始化开始,大概率我们需要的样式会在最后,所以我们用reverse先反转,再通过find去遍历。

遍历后我们可以通过我们需要得样式去获取那一组件的样式。以下是完整代码。

function getCssBlock() {const cssBlock = document.styleSheetsconst styleData = [...cssBlock].reverse().find(({ cssRules }) => {return [...cssRules].find((rule) => {return ['.voucher_head'].includes(rule.selectorText)})})return styleData.ownerNode.innerText
}

在js中获取vue文件的style标签下的内容相关推荐

  1. html遍历table tr,js中获取 table节点各tr及td的内容简单实例

    js中获取 table节点各tr及td的内容简单实例 2019-01-06 编程之家 https://www.jb51.cc 编程之家收集整理的这篇文章主要介绍了js中获取 table节点各tr及td ...

  2. js中获取 table节点各tr及td的内容方法

    <table id="tb1" width="200" border="1" cellpadding="4" ce ...

  3. js/jquery 获取本地文件的文件路劲 获取input框中type=‘file’ 中的文件路径(转载)...

    原文:http://blog.csdn.net/niyingxunzong/article/details/16989947 js/jquery 获取本地文件的文件路劲 获取input框中type=' ...

  4. 在style标签中,vue项目引入style文件,外部css文件

    在style标签中,vue项目引入style文件,外部css文件 一.css是什么? 二.使用步骤 1.使用style标签引入 2.在style标签内使用@import导入 总结 一.css是什么? ...

  5. vue项目 在style标签中引入css,less,sass的方法

    vue项目 style标签引入 less sass less和sass需要安装相应的依赖 package.json 中加上 并再次npm install 重启项目 "less": ...

  6. vue如何在style标签中使用data响应式数据?

    文章目录 一.面临到的需求? 二.如何在css中使用变量? 三.vue如何在style标签中使用data响应式数据? 一.面临到的需求? 首先我们知道css对应是有伪类的,如:hover, :acti ...

  7. 鸿蒙开发-在JS中获取hml页面中Input输入的值

    场景 鸿蒙基于JS搭建HelloWorld并修改国际化文件: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/118274050 在 ...

  8. js中获取元素的当前位置

    js中获取当前位置有如下几种方法: event.offsetX,   (IE属性,测试都可以使用) event.offsetY,    (IE属性,测试都可以使用) event.clientX,  e ...

  9. JS中获取contextPath的方法

    参考:https://hanzhdy.iteye.com/blog/2261832 https://blog.csdn.net/xb12369/article/details/46416845 在JS ...

最新文章

  1. GitHub 上有哪些好用的爬虫?
  2. 计算机技术会议排名,计算机学科会议排名
  3. 思科路由器全局、接口、协议调试(下)
  4. 堆和栈、值类型与引用类型、装箱与拆箱
  5. layui 日期格式不正确(date、datetime)区别
  6. 三角学——极坐标_2
  7. 【Spark】Spark SQL 物化视图技术原理与实践
  8. 生产环境中,RabbitMQ 持续积压消息不进行ack ,发生什么了?
  9. css 一些好玩的属性,推荐一些比较有用的css3新属性
  10. [No0000E0]批量打开当前路径下的文件
  11. Delphi XE开发 Android 开机自动启动
  12. Java中的对象都是在堆上分配的吗?
  13. PHP可变变量的简单使用
  14. Python环境搭建及PyCharm下载安装
  15. [转]Windows 7自带很好用的磁盘检查与修复的环境
  16. Java后台生成小程序二维码
  17. 数据仓库与数据挖掘 4(上)
  18. 一套完整仿拉勾网HTML静态网页模板(含38个独立HTML)
  19. Spire.pdf Pdf添加图片,无水印
  20. Netty处理器的小技巧和Netty大文件传输方法思路

热门文章

  1. Thinkpad USB 经典键盘使用体验
  2. 杜均退出超级节点,分赃不均还是独裁战争?-MGCEX
  3. 【小方重新学Java】初识Java
  4. 非常流行的防弹皮革摩托车背心运动车员
  5. JS刷新各层级iframe的方法
  6. pythonmap什么意思_python - 理解map函数
  7. 全基因组关联分析(GWAS):LD Block
  8. 基于JAVA医院病房管理系统计算机毕业设计源码+系统+数据库+lw文档+部署
  9. 如何登陆系统服务器,linux系统 怎么登陆服务器
  10. Android全局配置引用ttf字体包