content

关于<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">的解释

ε祈祈猫儿з 提交于 2020-02-26 04:57:32
随着高端手机(Andriod,Iphone,Ipod,WinPhone等)的盛行,移动互联应用开发也越来越受到人们的重视,用html5开发移动应用是最好的选择。然而,每一款手机有不同的分辨率,不同屏幕大小,如何使我们开发出来的应用或页面大小能适合各种高端手机使用呢?学习html5 viewport的使用能帮你做到这一点…… viewport 语法介绍: <!-- html document --> <meta name="viewport" content= "height = [pixel_value | device-height] , width = [pixel_value | device-width ] , initial-scale = float_value , minimum-scale = float_value , maximum-scale = float_value , user-scalable = [yes | no] , target-densitydpi = [dpi_value | device-dpi | high-dpi | medium-dpi | low-dpi]"/> width 控制 viewport 的大小,可以指定的一个值或者特殊的值,如 device-width 为设备的宽度(单位为缩放为 100% 时的 CSS 的像素)。

ZABBIX对接飞书实现带图片的报警通知

柔情痞子 提交于 2020-02-26 02:20:39
飞书提供了丰富的api来实现消息的通知,包括文本消息、图片消息、富文本消息,本次介绍使用飞书api发送富文本消息,以下是实现思路 飞书API地址: https://open.feishu.cn/document/ukTMukTMukTM/uITNz4iM1MjLyUzM 实现思路 1.根据正则获取监控项id,需要在动作中定义报警信息 2.根据获取的监控项id构造请求获取图片地址,并下载到本地 3.需要获取三个授权凭证 app_access_token :访问App资源相关接口。 tenant_access_token :访问企业资源相关接口。 user_access_token :访问用户资源相关接口。 4.根据zabbix报警的收信人手机号获取user_id,用于后面在群里@相关负责人,或者直接发给某个责任人 5.chat_id用于发送给指定的群,这里我提供两种方法获取chat_id,后面会介绍 6.上传本地图片到飞书,并获取img_key,image_key用于发送图片信息 7.传入zabbix报警消息,并艾特相关负责人发送到飞书群里或者个人 获取itemID 利用正则匹配报警信息中的itemID def get_itemid(): #获取报警的itemid itemid=re.search(r'ITEM ID:(\d+)',sys.argv[3]).group(1)

ZABBIX对接飞书实现报警通知

烈酒焚心 提交于 2020-02-26 00:37:06
飞书提供了丰富的api来实现消息的通知,包括文本消息、图片消息、富文本消息,本次介绍使用飞书api发送文本消息,以下是实现思路 飞书API地址: https://open.feishu.cn/document/ukTMukTMukTM/uITNz4iM1MjLyUzM 实现思路 1.需要获取三个授权凭证 app_access_token :访问App资源相关接口。 tenant_access_token :访问企业资源相关接口。 user_access_token :访问用户资源相关接口。 2.根据zabbix报警的收信人手机号获取user_id,用于后面在群里@相关负责人,或者直接发给某个责任人 3.chat_id用于发送给指定的群,这里我提供两种方法获取chat_id,后面会介绍 4.传入zabbix报警消息,并艾特相关负责人发送到飞书群里或者个人 获取授权凭证 1.获取 App ID 和 App Secret 登录开发者后台,在“我的应用”页面创建企业自建应用。进入企业自建应用详情页,获取App ID和App Secret。 2.获取 tenant_access_token 一种方法是通过企业自建应用方式获取,另一种是通过应用商店应用获取,这里我使用第一种方法,直接创建应用即可 3.创建完应用后可根据APP ID和 App Secret构造请求获取 def gettenant

C#个推SDK推送安卓+iOS

陌路散爱 提交于 2020-02-25 12:46:50
下载个推SDK,找到这两个dll直接引用。 using引用 using com.gexin.rp.sdk.dto; using com.igetui.api.openservice; using com.igetui.api.openservice.igetui; using com.igetui.api.openservice.igetui.template; using com.igetui.api.openservice.igetui.template.notify; using com.igetui.api.openservice.payload; 两种方案获取到这些参数。 public const string HOST = "http://sdk.open.api.igexin.com/apiex.htm"; public const string APPID = "xxxxxxxxxxxxx"; public const string APPKEY = "xxxxxxxxxxxxx"; public const string AppSecret = "xxxxxxxxxxxxx"; public const string MASTERSECRET = "xxxxxxxxxxxxx"; 1,使用unipush https://dev.dcloud.net.cn/uni

设计模式课程 设计模式精讲 22-2 备忘录模式coding

我只是一个虾纸丫 提交于 2020-02-24 06:39:52
1    代码演练 1.1  代码演练1 1    代码演练 1.1  代码演练1 需求: 网站笔记需要存储快照,能实现回退的功能。 注意: a  设计的时候,可以分为笔记类,笔记快照类和 笔记快照管理类 三个类。 b   笔记快照 管理 和 笔记快照是聚合关系,快照管理可以有0到多个笔记快照。 c  快照管理类用栈的方式存储快照,先进后出,后进先出。 uml类图:(右边是测试类) 测试类: package com.geely.design.pattern.behavioral.memento; /** * Created by geely */ public class Test { public static void main(String[] args) { ArticleMementoManager articleMementoManager = new ArticleMementoManager(); Article article= new Article("如影随行的设计模式A","手记内容A","手记图片A"); ArticleMemento articleMemento = article.saveToMemento(); articleMementoManager.addMemento(articleMemento); System.out.println(

Android的组件

蹲街弑〆低调 提交于 2020-02-23 17:19:43
应用程序组件是是Android应用程序的重要基石。不同的组件存在不同的指向,系统也由不同的指向进入程序。 应用程序组件有4种不同的类型。每一个都有不同的定义。 1.Activities:一个Activity(活动)表示一个二用户界面,可以与用户进行交互。比如,一个电话簿应用程序可以包括一个显示所有联系人的Activity、一个添加新的联系人的Activity、一个编辑联系人的Activity,以及一个显示详细信息的Activity。这些Activity共同给用户提供体验,但每个都相互独立。所以,如果给予一些应用程序权限,它们可以访问这些活动中的其中一个。比如QQ在开始使用时会询问是否给予联系人权限,同意后其会显示通讯录好友; 要实现一个Activity,需要定义一个Activity类的子类。如果新建一个活动,必须在AndroidManifest.xml中进行表明; 2.Services:Service(服务)指在后台运行的组件,一般用于执行需要长时间的操作或者远程操作。Service不提供用户界面。比如,Service在后台播放音乐的同时,用户在使用另一个不同的应用程序,或者Service可能正在获取网络上的数据,但并不阻塞用户使用交互活动。作为一个组件,某个Activity可以启动该服务,使之运行或绑定以便于交互; 要实现一个Service,需要定义一个Service类的子类;

设计模式(第二十式:备忘录模式)

霸气de小男生 提交于 2020-02-22 21:07:35
概念:   备忘录模式:Without violating encapsulation, capture and externalize an object's internal state so that the object can be restored to this state later. 在不破坏封装性的前提下,捕获一个对象内部的状态,并在该对象之外保存这个状态。这样就可以将该对象恢复到原先保存的状态。 实现:   需要备份的对象 public class Document { public Document(String name, String content) { this.name = name; this.content = content; } private String name;//文件名称一般不需要备份 private String content;//文件内容一般需要备份 public Backup backup() { System.out.println("文件被保存备份"); return new Backup(this); } public void recover(Backup backup) { System.out.println("文件被还原"); this.content = backup.getContent(); } /*

实现myRedux(二)

折月煮酒 提交于 2020-02-22 05:00:01
现在我们继续实现属于我们自己的redux ps:没有看过第一篇的童鞋建议先看 第一篇 再看这篇 纯函数(Pure Function) https://blog.csdn.net/qq_40766509/article/details/104405353#comments 简单说, 一个函数的返回结果只依赖于他的参数,并且执行过程中没有副作用 ,就是纯函数 从上面看,纯函数需要两个条件: 函数的返回结果只依赖于它的参数 函数的执行过程没有副作用 现在分别看一下两个条件 函数的返回结果只依赖于它的参数 const a = 1 const foo = ( b ) => a + b foo ( 2 ) // => 3 foo 就不是一个纯函数,因为他的返回值要依赖外部变量 a ,我们不知道 a 的情况下,不能保证 foo(2) 的返回值是3,如果 a 变化,那返回值是 不可预料 的。 const a = 1 const foo = ( x , b ) => x + b foo ( 1 , 2 ) // => 3 修改一下 foo ,现在函数的返回结果只依赖于他的参数,所以是纯函数 函数执行过程没有副作用 再修改一下 foo const a = 1 const foo = ( obj , b ) => { return obj . x + b } const counter = { x :

淘宝首页前端开发分析

回眸只為那壹抹淺笑 提交于 2020-02-21 11:42:47
doctype & charset: <!DOCTYPE HTML> ...... <meta charset="gbk"> 页面使用了HTML5 dtd以及HTML5 charset,页面编码使用“gbk” //从ASCII、GB2312到GBK,这些编码方法是向下兼容的,即同一个字符在这些方案中总是有相同的编码,后面的标准支持更多的字符。在这些编码中,英文和中文可以统一地处理。区分中文编码的方法是高字节的最高位不为0。按照程序员的称呼,GB2312、GBK都属于双字节字符集 (DBCS); //UTF-8是Unicode的实现方式之一; //GBK、GB2312等与UTF8之间都必须通过Unicode编码才能相互转换; 相关阅读: gbk, gb2312,big5,unicode,utf-8,utf-16之间的关系 ============================================================= IE9下Pin的开发: 效果: <meta name="application-name" content="淘宝网 - 淘!我喜欢" /> <meta name="msapplication-tooltip" content="淘宝网 - 淘!我喜欢" /> <meta name="msapplication-task" content=

设置el-tooltip的宽度

♀尐吖头ヾ 提交于 2020-02-20 17:10:03
<div class="title" > <el-tooltip v-bind:content="item.content" popper-class="tips" placement="bottom" effect="light"> <a href=""> {{item.message}}</a> </el-tooltip> </div> <el-tooltip placement="top"> <div slot="content">多行信息<br/>第二行信息</div> <el-button>Top center</el-button> </el-tooltip>    来源: https://www.cnblogs.com/ygunoil/p/12336403.html