2018主流网站建设语言在国内做敏感网站

web/2025/10/7 3:12:54/文章来源:
2018主流网站建设语言,在国内做敏感网站,在线测评网站怎么做,新闻头条国内大事项目场景#xff1a; 在制作数据视图时经常会遇到多个数据视图的情况#xff0c;在多个数据视图的情况下做自适应是比较麻烦的#xff0c;这里就详细的分析一下该如何去制作#xff0c;分享一下我的解决办法及思路。 定义 DOM 容器 这里需要注意一个地方#xff0c;在定…项目场景 在制作数据视图时经常会遇到多个数据视图的情况在多个数据视图的情况下做自适应是比较麻烦的这里就详细的分析一下该如何去制作分享一下我的解决办法及思路。 定义 DOM 容器 这里需要注意一个地方在定义高宽的 DOM 容器时不能把宽度定为固定大小或者父级也不能为固定大小如果是固定的宽度哪怕重绘了宽度也是一样的所以是无法实现自适应的一般情况下都是固定高度然后宽度自适应。 例 div reflinechart stylewidth:100%;height:400px;/div想要实现数据视图的自适应就得先保证它的DOM容器是自适应的。 单个数据视图进行自适应 单个数据视图的解决方案就比较多了也比较简单就不过多的说明了 1. 使用window.onresize let myChart echarts.init(document.getElementById(dom)) window.onresize function () {myChat.resize() }这个是通过ECharts自带的方法 myChart是你自己初始化一个 echarts在myChart中有一个方法resize调用这个方法可以实现重绘实现自适应 这里拓展一下myChat.resize()是可以自定义大小的 myChart.resize({width: 800,height: 400 });具体使用方法就看需求了。 这里还需要注意一个地方就是这个方法也是可以实现多个数据视图自适应但是比较笨一点 let myChart1 echarts.init(document.getElementById(dom1)) let myChart2 echarts.init(document.getElementById(dom2)) window.onresize function () {myChat1.resize()myChat2.resize() }2.使用window.addEventListener添加resize方法 let myChart echarts.init(document.getElementById(dom)) let sizeFun function () {myChat.resize() } window.addEventListener(resize, sizeFun ) 这个方法我也使用过最大的问题就是当离开这个页面的时候这个函数依旧会去执行当其他页面不存在这个DOM时则会报错并且触发的非常频繁还需要写防抖节流器所以不推荐使用这里就不过多说明了。 多个数据视图进行自适应 这里分享一下我的思路 1.通过父子传值 我是先用一个父组件然后将这些视图分成一个个的子组件在父组件监听浏览器的事件当窗口大小改变之后把一个定义好的值我这里用的是resizetrue传给子组件子组件接收到时候在执行重绘。 具体代码就不展示了因为就是一个父子传值的问题也比较简单主要是分享一下解决方案 2.通过封装 这个是我目前使用的方法但是这个方法存在一定的局限性就是先要确定需求保证使用的数据视图是差不多的比如都使用到折线图柱状图这种相似的数据视图 我这里全部使用的就是折线面积图当点击某个端点时则切换显示该字段的明细。 还有可以切换柱状图 数据视图 这里说一下为什么这样做 使用过ECache都知道这个组件的代码量比较大尤其是在多个数据视图的情况下代码冗余量非常多。因为我封装好了需要修改时只需要修改封装的组件降低维护成本后续在需要制作时直接调用即可 具体如何封装我会在后续发布 通过封装我们就可以非常简单的解决这个自适应的问题了。 option option1;option myChart.setOption(option);//根据窗口的大小变动图表 --- 重点let listener function(){myChart.resize()}EleResize.on(chartDom,listener)EleResize 这个JS是我在网上找到的一个ECharts图表自适应的JS // ECharts图表自适应JS var EleResize {_handleResize: function (e) {var ele e.target || e.srcElementvar trigger ele.__resizeTrigger__if (trigger) {var handlers trigger.__z_resizeListenersif (handlers) {var size handlers.lengthfor (var i 0; i size; i) {var h handlers[i]var handler h.handlervar context h.contexthandler.apply(context, [e])}}}},_removeHandler: function (ele, handler, context) {var handlers ele.__z_resizeListenersif (handlers) {var size handlers.lengthfor (var i 0; i size; i) {var h handlers[i]if (h.handler handler h.context context) {handlers.splice(i, 1)return}}}},_createResizeTrigger: function (ele) {var obj document.createElement(object)obj.setAttribute(style,display: block; position: absolute; top: 0; left: 0; height: 100%; width: 100%; overflow: hidden;opacity: 0; pointer-events: none; z-index: -1;)obj.onload EleResize._handleObjectLoadobj.type text/htmlele.appendChild(obj)obj.data about:blankreturn obj},_handleObjectLoad: function () {this.contentDocument.defaultView.__resizeTrigger__ this.__resizeElement__this.contentDocument.defaultView.addEventListener(resize, EleResize._handleResize)} } if (document.attachEvent) { // ie9-10EleResize.on function (ele, handler, context) {var handlers ele.__z_resizeListenersif (!handlers) {handlers []ele.__z_resizeListeners handlersele.__resizeTrigger__ eleele.attachEvent(onresize, EleResize._handleResize)}handlers.push({handler: handler,context: context})}EleResize.off function (ele, handler, context) {var handlers ele.__z_resizeListenersif (handlers) {EleResize._removeHandler(ele, handler, context)if (handlers.length 0) {ele.detachEvent(onresize, EleResize._handleResize)delete ele.__z_resizeListeners}}} } else {EleResize.on function (ele, handler, context) {var handlers ele.__z_resizeListenersif (!handlers) {handlers []ele.__z_resizeListeners handlersif (getComputedStyle(ele, null).position static) {ele.style.position relative}var obj EleResize._createResizeTrigger(ele)ele.__resizeTrigger__ objobj.__resizeElement__ ele}handlers.push({handler: handler,context: context})}EleResize.off function (ele, handler, context) {var handlers ele.__z_resizeListenersif (handlers) {EleResize._removeHandler(ele, handler, context)if (handlers.length 0) {var trigger ele.__resizeTrigger__if (trigger) {trigger.contentDocument.defaultView.removeEventListener(resize, EleResize._handleResize)ele.removeChild(trigger)delete ele.__resizeTrigger__}delete ele.__z_resizeListeners}}} } export {EleResize} 将这个JS导入到页面中就可以直接使用了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/88253.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

十佳网站济南网站建设丨 首选搜点网络

输出的第一行(Mem:)显示出物理内存的使用情况。总和(total)列中并没有显示出被内核使用的内存,它通常将近一兆字节。已用列(used column)显示出已用内存的总和(第二行没有把缓冲算进来)。空闲列(free column)显示了所有未被使用的空闲内存。共享列(shared column)显…

哪些做调查问卷挣钱的网站网络营销的好处

假如企业需要利用CRM软件来对自己的客户实施一系列的管理维护流程,那么客户服务自动化是个必选的功能流程,如果没有服务自动化流程,那么CRM软件就成了一个普通客户资料信息管理工具,只能被用于储存调用客户的相关信息,…

随州网站优化网络营销策略包括哪些方面

Lumina-T2X:大型扩散DiTs在多模态内容生成中的新篇章 摘要 随着人工智能技术的飞速发展,多模态内容生成已成为计算机视觉和自然语言处理领域的研究热点。本文介绍了Lumina-T2X,一个基于大型扩散变换器(Diffusion Transformers, …

免费建立永久网站小型教育网站的开发建设论文

打印课堂上图案 判断一个数是否是质数(素数) 设计一个程序,完成(英雄)商品的购买(界面就是第一天打印的界面) 展示商品信息(折扣)->输入商品价格->输入购买数量->提示付款 输入付款金额->打印购买小票&a…

查询网站备案进度查询加强网站建设的

预言机 1. 概述 预言机主要承担两个工作,一是验证信息可靠性,二是传递信息。 如果没有预言机,区块链的信息来源将仅限于其内部数据,其广泛使用的潜力和可能性将会大大降低。 区块链预言机是区块链与外部世界之间的桥梁。它们使区…

手机影视素材网站大全淘宝客网站备案信息怎么写

Dubbo 一、dubbo简介 Dubbo是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的RPC实现服务的输出和输入功能,可以和Spring框架无缝集成。 Dubbo是一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力&#xff…

网站建设与管理下拉列表框网站运营优化建议

动态设置组件的属性,支持开发者在属性设置时使用if/else语法,且根据需要使用多态样式设置属性。 说明: 从API Version 11开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 attributeModifier attributeMo…

用自己的ip怎么查看dw8建设的网站专业网站设计发展前景

3.字面量 字面量类型说明程序中的写法整数不带小数的数字666,-88小数带小数的数字13.14,-5.21字符必须使用单引号,有且仅能一个字符‘A’,‘0’, ‘我’字符串必须使用双引号,内容可有可无“HelloWorld”&…

建网站网站建设wordpress点击图片暗箱

目录 安装 ECharts 组件使用 ECharts 组件图表延迟加载 echarts-for-weixin 是 ECharts 官方维护的一个开源项目,提供了一个微信小程序组件(Component),我们可以通过这个组件在微信小程序中使用 ECharts 绘制图表。 echarts-fo…

高端网站建设上做网站多少钱赚钱吗

第1章框架学习的基石与实战策略 1.1 框架学习的引路人:权威教程的重要性 在编程的世界里,掌握一个框架就像是装备了一套精良的工具,这不仅能显著提升开发速度,还能展现一个程序员的专业水平。对于那些刚刚踏入编程领域的初学者来…

申请网站官网网站报价内容

导入虚拟机 虚拟机位置 导入到那一个服务器 导入虚拟机存放存储位置 虚拟机网卡配置 SR修复功能,看自己需求 虚拟机恢复确认最终配置 恢复好的虚拟机 虚拟机模板转换

可以免费生成网站的软件注册文化传媒公司流程和费用

近年来,随着中越两国的交流日益频繁,为了促进双方的交流与理解,市场上对越南语翻译的需求也日益增加。那么,如何做好越南语翻译,人工翻译哪家公司值得信赖呢? 据了解,中文翻译越南语是一项颇具挑…

网站标识代码怎么加小程序登录跳转

1. 题目解析 题目链接:257. 二叉树的所有路径 这个问题的理解其实相当简单,只需看一下示例,基本就能明白其含义了。 2.算法原理 针对二叉树路径的求解问题,我们可以采用深度优先遍历(DFS)的策略来寻找所…

东南亚网站建设市场个人建设网站服务器怎么解决

前言:随着我国网络经济重心向移动端的转移,移动教育领域获得的关注度在持续放大。互联网的发展和移动设备的普及,我们开始在移动设备上学习,各种学习教育软件如雨后春笋,越来越多,就背单词软件来说&#xf…

网站源码文件安装教程在国内做推广产品用什么网站好

v-model是什么1.双向数据绑定,既可以拿取data的数据,也可以写入数据2.v-model本身是一个语法糖,一般用于表单收集3.v-model自动绑定表单value值 v-model""v-model原理1.使用v-bind绑定数据2.使用oninput传递数据 vue.js devtools扩…

网站定制营销的过程网站建设与管理专业就业前景

以下内容源于朱有鹏嵌入式课程的学习与整理,如有侵权请告知删除。 参考内容 I2C子系统详解3——I2C总线驱动层代码分析_天糊土的博客-CSDN博客 一、S5PV210的I2C控制器 1、为什么需要控制器? 通信双方通过时序协调工作,但是时序比较复杂而…

上海网站定制设计装饰网站

来源:https://www.awaimai.com/873.html 歪麦博客最近负责一个项目,用了 Yii Framework 的 MVC 框架,刚开始自以为结构很稳健。但是随着对业务逻辑理解的深入,才开始意识到问题的严重。我错误地理解了 MVC 中的 Controller&…

台前网站建设公司域名备案中网站可以开通

什么是建造者设计模式?和工厂设计模式有什么区别 建造者设计模式(Builder Design Pattern)和工厂设计模式(Factory Design Pattern)都是面向对象设计中的创建型模式,但它们解决的问题和应用场景有所不同。…

wordpress如何添加百度商桥wordpress 手机端优化

简介 TPC-C是专门针对联机交易处理系统(OLTP系统)的规范,一般情况下我们也把这类系统称为业务处理系统。 Tpcc-mysql是percona基于TPC-C(下面简写成TPCC)衍生出来的产品,专用于MySQL基准测试。其源码放在launchpad上&#xff0c…

除了Joomla用什么做网站好怎么给你新网站做seo

文章目录 继承的概念及定义继承的概念继承定义 基类和派生类对象赋值转换继承中的作用域派生类的默认成员函数继承与友元继承与静态成员复杂的菱形继承及菱形虚拟继承菱形继承菱形虚拟继承 继承的总结和反思笔试面试题 继承的概念及定义 继承的概念 继承(inheritance) 机制是面…