最近看到那种带箭头的提示框,忽然想看一下到底什么原理,也就去网上搜了一下,现在总结一下实现方法。大概也就三种方法。第一种方法就是纯粹的利用div的边框图中A和B,C和D分别是一对实现向右和向左箭头的前后图。看图A:<div class="arrow-right-a"></div>CSS:.arrow-right-a {     width: 0;     height: 0;     border-left: 20px solid #ccc;     border-top: 10px solid #000;     border-bottom: 10px solid #000;     border-right: 10px solid #ccc; }把div的高和宽都设为0,然后设置这个div的四个边框,边框宽度设置大一点。最终看效果(图A)。我们可以看到四个边框都是三角形的,那么我们是不是可以让其中的任意三个边框透明,只显示一个三角形,是不是就可以得到四个方向的箭头了呢?看图B:<div class="arrow-right-b"></div...
 发布日期: 2014-10-09    分类: HTML/CSS    浏览量: 4288   0条评论  
鉴权就是验证一个用户是否有足够权限去做一件事的过程。Yii提供了两种鉴权方式:Access Control Filter (ACF,访问控制过滤器)和Role-Based Access Control (RBAC,基于角色的访问控制)。访问控制过滤器(ACF)ACF是一种简单的鉴权方式,是用来做一些简单的访问控制的一种好方法。顾名思义,ACF是作为一个行为(behavior)附加在控制器(controller)或者一个模块(module)上的动作过滤器。ACF会检查一组访问规则,以确认当前用户是否有足够的权限访问动作(action)。以下代码展示了如何去使用ACF:use yii\filters\AccessControl; class SiteController extends Controller {     public function behaviors()     {         return [             'access' => [                 'class' => AccessControl::className()...
 发布日期: 2014-09-19    分类: PHP    浏览量: 10035   0条评论  
HTML5的触摸API支持处理单点和多点的触摸事件处理。接口1、TouchEvent:代表了一个触摸事件。主要属性:TouchEvent.changedTouches:一个TouchList对象。代表了所有上一个接触点到当前点状态发生变化的点。TouchEvent.touches:一个TouchList对象。代表的所有当前触摸点,不管目标或者状态是否改变。TouchEvent.type:触摸事件类型。有touchstart、touchend、touchmove、touchenter、touchleave和touchleave。2、Touch:代表一个单独的触摸点。主要属性:Touch.identifier:这个触摸对象的唯一标识。3、TouchList:代表一组触摸点。比如同时有多根手指放在在屏幕上面。4、DocumentTouch:包含创建Touch和TouchList对象的方法。 触摸事件touchstart:触摸的时候发生。touchend:手指从屏幕抬起时发生。手指划出了屏幕也会触发这个事件。touchmove:手指沿着屏幕滑动时触发。touchenter:触摸点进入到一个元素...
 发布日期: 2014-08-20    分类: Javascript    浏览量: 51991   0条评论  
测试过了QQ,126和gmail的SMTP。以下代码含有输出调试信息的代码,如果不要需要自行去除!代码及示例如下:<?php /** * 邮件发送类 * 支持发送纯文本邮件和HTML格式的邮件,可以多收件人,多抄送,多秘密抄送,带附件(单个或多个附件),支持到服务器的ssl连接 * 需要的php扩展:sockets、Fileinfo和openssl。 * 编码格式是UTF-8,传输编码格式是base64 * @example * $mail = new MySendMail(); * $mail->setServer("smtp@126.com", "XXXXX@126.com", "XXXXX"); //设置smtp服务器,普通连接方式 * $mail->setServer("smtp.gmail.com", "XXXXX@gmail.com", "XXXXX", 465, true); //设置smtp服务器,到服务器的SSL连接 * $mail->setFrom("XXXXX"); //设置发件人 * $mail->setReceiver("XXXX...
 发布日期: 2013-10-16    分类: PHP    浏览量: 6433   0条评论  
话说默认的样式超级难看,而这个东西又比较特殊,input其他的类型都可以自定义的,唯独file不能被改变。起初上网搜索了一下,都说不能改变,无奈。都是用一个text和一个button的input,然后隐藏掉file,再用js控制。也挺简单,看下面代码:<script> function fileup(){ var fileup = document.getElementById("fileupload"); file.click(); } function change(){ var file = document.getElementById("file"), fileup = document.getElementById("fileupload"); fileup.value = file.value; } </script> <input type="text" id="fileupload" /> <input type="button" id="button" value="browse" onclick="fileup()" /&...
 发布日期: 2013-04-25    分类: Javascript    浏览量: 3691   0条评论  
简介:JavaScript 函数式脚本语言特性以及其看似随意的编写风格,导致长期以来人们对这一门语言的误解,即认为 JavaScript 不是一门面向对象的语言,或者只是部分具备一些面向对象的特征。本文将回归面向对象本意,从对语言感悟的角度阐述为什么 JavaScript 是一门彻底的面向对象的语言,以及如何正确地使用这一特性。前言当今 JavaScript 大行其道,各种应用对其依赖日深。web 程序员已逐渐习惯使用各种优秀的 JavaScript 框架快速开发 Web 应用,从而忽略了对原生 JavaScript 的学习和深入理解。所以,经常出现的情况是,很多做了多年 JS 开发的程序员对闭包、函数式编程、原型总是说不清道不明,即使使用了框架,其代码组织也非常糟糕。这都是对原生 JavaScript 语言特性理解不够的表现。要掌握好 JavaScript,首先一点是必须摒弃一些其他高级语言如 Java、C# 等类式面向对象思维的干扰,全面地从函数式语言的角度理解 JavaScript 原型式面向对象的特点。把握好这一点之后,才有可能进一步使用好这门语言。本文适合群体:使用过 JS ...
 发布日期: 2013-04-23    分类: Javascript    浏览量: 3282   0条评论  
实例化类,然后调用类run()方法,即可生成默认的验证码图片,验证码图片是根据.ttf的字体文件生成的,所以必须要有字体文件,字体文件和类同级目录,要更改默认设置可以实例化类是传入参数、值的数组。调用getVerifyCode()方法会返回生成的验证码字符串。修改字体在219行。<?php class MyCaptchaAction {     /**     * @var integer the width of the generated CAPTCHA image. Defaults to 120.     * 图片宽度,默认120     */     public $width = 120;     /**     * @var integer the height of the generated CAPTCHA image. Defaults to 50.     * 图片高度,默认50     */     public $height = 50;     /**     * @var integer padding around the t...
 发布日期: 2013-04-22    分类: PHP    浏览量: 4930   0条评论