
Web前端
文章平均质量分 71
励志故事
分享与成长
展开
-
【React】React实现手风琴效果
需求背景效果图: 由于不确定手风琴的个数,所以无法通过一个全局的state.hidden属性统一设置。有两种解决方法: 1. 数组的方式 2. 建立索引值查找(本文所使用的方法)import React, { Component } from 'react';import styles from './List.css';import { connect } from 'r原创 2017-12-19 17:25:11 · 4886 阅读 · 0 评论 -
【jQuery】保持this所指向的元素(以Ajax为例说明)
以Ajax为例说明如何保持this所指向的元素原创 2015-09-08 23:19:29 · 2285 阅读 · 0 评论 -
【Jquery】jQuery获取URL参数的两种方法
jQuery获取URL参数的关键是获取到URL,然后对URL进行过滤处理,取出参数。location.href是取得URL,location.search是取得URL“?”之后的字符串,也就是说参数部分。方法一:function request(paras){ var url = location.href; var paraString =原创 2015-08-16 23:50:09 · 16582 阅读 · 0 评论 -
【JS】测试:HTML页面引入另一个HTML页面,同名ID会冲突吗
今天被问到一个问题,就是当页面HTML页面引入了另外一个HTML页面,恰好2个页面具有相同的ID,那么需要用ID来处理一些行为的时候会发生冲突或者报错吗? 我用了iframe来引入另外一个HTML页面。 先准备好材料:1个HTML页面(含iframe标签,我命名为test.html),再加一个HTML页面(作为iframe页面的src源,这个页面我命名为iframe.html)。两个页原创 2015-08-31 21:43:04 · 4987 阅读 · 4 评论 -
【JS】垃圾回收和块级作用域
垃圾回收:JavaScript中,开发人员不必关心内存分配和回收的问题,这和Java语言相似,有一个垃圾自动回收机制。那么JavaScript内部究竟是怎样回收垃圾的呢?使用标记回收法:就是说,离开作用域的值将被自动标记为可以回收,因此将在垃圾收集期间被删除。标记删除是当前主流的垃圾收集算法,这种算法的思想是给当前不使用的值加上标记,然后回收期内存。关于作用域的知识,大家有需要可以原创 2015-08-14 15:28:53 · 969 阅读 · 0 评论 -
【Jquery】prop与attr的区别
prop与attr的区别,前端开发必看原创 2015-08-14 18:25:13 · 1186 阅读 · 0 评论 -
【JQuery】jQuery自制简易手风琴效果(附实现原理)
简易手风琴效果,附实现原理原创 2015-08-30 09:48:59 · 10250 阅读 · 0 评论 -
【jQuery】仿淘宝五星评价打分的实现
我的上一篇博文写到了评价分数的五星显示,这篇博文将介绍如何实现打分的效果。首先,我们还是先分析我们想要的效果。1.当鼠标移到星星上面的时候,当前星星以及前面的星星要亮起来,然后星星的右侧出现提示语,1星:很差,2星:比较差,3星:一般,4星:比较好,5星:很好。2.当鼠标点击的时候,打分,这个时候当前星星以及前面的星星要亮起来,提示语也要隐藏。3.但鼠标移开是,就显示我此前打得分数原创 2015-08-23 23:05:52 · 10989 阅读 · 2 评论 -
【JS】JavaScript引擎的内部运行机制
JavaScript引擎的内部运行机制,前端必学原创 2015-08-25 09:23:23 · 1263 阅读 · 0 评论 -
【HTML】仿淘宝五星评价显示任何分数
最近做项目做到一个五星评分的,这个分数的显示,要精确到小数,就是如果分数是4.3分,就显示4.3颗星星,这个看上去好像挺难的,但是做起来很简单。首先我们整理一下思路,这效果要怎么做出来,因为这个分数的原因,很容易让人联想到进度条,所以就想到了用遮罩来出来。做法很简单,灰色星星的图片放在下面,然后亮色星星的图片在上面,重叠两张图片,任何控制上面亮色的星星图片,根据分数显示它的长度,这样便能实现这原创 2015-08-23 22:51:15 · 15082 阅读 · 4 评论 -
【JS】用cookie记住用户名
要使用cookie来记住上一次登录时的用户名和密码。主要分为两部分,一个是设置cookie,另一个是读取cookie。当用户第一次登录时设置cookie,并把这个cookie存储起来加一个过期期限,当用户再次登录时读取之前已经存储的cookie即可。注意:如果是在本地测试,在Firefox才能记录cookie信息。具体方法是:下面通过一个表单来举例,为尽量模拟真实的提交表单,把ac原创 2015-07-14 22:58:48 · 1681 阅读 · 0 评论 -
【Jade】jade的一些使用技巧
最近在学习使用Node的express框架来搭建一个web网站,其中会涉及到视图渲染方面的东西。这可以借助ejs或者jade这些模板引擎来辅助渲染(模板引擎有很多,使用得最多的、较为完善的就是ejs和jade)。关于选择哪个模板引擎比较好?网上也有不少的说法,我也上网查看了一下,基本上是“一边倒”,然而最后我还是没能从网上得出哪个模板引擎的使用比较好。ejs的语法和一般的PHP、JSP比较相似原创 2015-08-07 15:45:12 · 4112 阅读 · 0 评论 -
【jquery】优化仿淘宝五星评价打分(附注释)
仿淘宝五星评价代码优化原创 2015-09-08 21:55:21 · 5255 阅读 · 1 评论 -
【jQuery】普通正则表达式校验和validationEngine校验
在实际的开发中,我们经常遇到的校验莫非于非空校验、数字校验、电话校验、邮箱校验,在这里我就以以上校验作例子,其他的校验网上一搜一大把。其实使用正则表达式校验是比较灵活的一种方式,首先介绍正则表达式校验。下面我直接贴代码了,有一点要注意的,就是非空校验,很多时候我们需要校验非空,是连带空格都要校验的,所以例子中的非空校验是会校验空格的。 非空:不能为空 电话号码:请输入正确的电原创 2015-09-12 09:43:00 · 1925 阅读 · 0 评论 -
【CSS】背景图套路一:用border-image做背景图
未经允许,不得转载。需求背景:如何用css来制作这样的一张优惠券?尤其是金棕色的齿轮:(设计稿宽高为690px * 210px)我想到的最直接快速的方法就是用background的URL来设置:直接把下面整个图片作为元素的背景,搞定!(宽高为690px * 210px,注意四边有1px,#e6e6e6,6px的圆角描边)这样固然不失为一种快速原创 2017-08-24 20:22:06 · 6905 阅读 · 0 评论 -
【JS】使用原型对象封装下拉框
一些对js原型的理解,下拉框的封装。原创 2017-11-09 09:55:04 · 973 阅读 · 0 评论 -
【前端兼容】2016前端兼容笔记
工作一年多,发现博客大家都不怎么写了,本着分享的原则,这一年大大小小也积累了一些知识,希望大家少踩坑,当然,踩坑并不一定是坏事,那是一种成长。前端制作考虑情况:浏览器兼容,IE7、谷歌、火狐、360、百度等浏览器兼容;屏幕适应,大屏和小屏的宽度适应,最小宽度和最小高度的限定;考虑文字过多的情况;表单输入设置提示选项,注意留有错误提示位置;题目类页面切图时应考虑各种可能出现的题型,单选、多选原创 2017-02-14 11:44:30 · 1005 阅读 · 0 评论 -
【Ajax】ajax上传文件及进度条的实现
html5上传是同步上传的方式,所以能够实现进度条的显示。 1.上传文件: 首先我们用ajax来取得的file对象: var file = null; var input = $("#file_upload"); //文件域选择文件时, 执行readFile函数 input.addEventListener('change',readF原创 2015-12-21 16:06:18 · 10684 阅读 · 0 评论 -
【JSON】json与List的相互转换
在前端: 1.如果json是List对象转换的,可以直接遍历json,读取数据。 2.如果是需要把前端的List对象转换为json传到后台,param是ajax的参数,那么转换如下所示: var jsonStr = JSON.stringify(list); var param= {}; param.jsonStr=jsonStr; 在后台:原创 2015-12-21 11:58:36 · 6641 阅读 · 0 评论 -
【Ajax】ajax的dataType
ajax的dataType是设置预期服务器返回的数据类型。如果不指定,jQuery 将自动根据 HTTP 包 MIME 信息来智能判断,后台设置MIME 类型是用response.setContentType(MIME)方法设置。 ajax的dataType的值有以下常见类型: "xml": 返回 XML 文档。 "html": 返回纯原创 2015-12-21 12:00:41 · 7960 阅读 · 0 评论 -
【Json】使用json的一些技巧
json这种数据格式很简便,在开发中经常用到,这次我们来谈谈关于json的一些使用技巧。若返回的是json数据,直接返回到前台访问的话只会提示object,但不会显示json里面的具体内容,如:var aaa = {xxx:yyy,mmm:nnn};console.log(aaa); //[object object]如果想要知道aaa的具体内容是什么,需原创 2015-12-19 13:15:45 · 1085 阅读 · 0 评论 -
【css】制作网页图标
分享一个简单添加网站icon的技巧。需要生成网页图标只要在head里面增加即可,一般使用PS生成ico格式的16*16或32*32的图片。图片的路径一般直接放在根目录即可。最好使用png格式的图片,否则JPG格式图片可能会出现白底影响美观。附:20个最好的在线网站 favicon 生成工具http://blog.wpjam.com/article/20-原创 2015-12-15 13:19:35 · 1236 阅读 · 0 评论 -
【JS】关于trim函数的小tips
trim();函数的作用是去掉字符串的前后空格。js不像其他高级语言那样自带trim函数,而是需要自己改接口写:另外,如果遇到的是非字符串类型(如数组、数字等),需要先toString()转成字符串,然后再trim()去空格。注意:若是空值、undefined等值,是无法转换成字符串的,因为本来就没值,转字符串会报错,原创 2015-12-14 01:30:30 · 1195 阅读 · 0 评论 -
【jQuery】遮罩效果的实现
暑假的实习,本来不怎么懂JavaScript的我,写了挺多JavaScript或者是jQuery的一些小效果,现在记录下来,方便以后查看。遮罩效果一般用在数据处理需要一定时间,这段等待的时间不希望用户去点击按钮或者是修改数据,那么就会用到遮罩层,等到数据处理完毕之后,再关闭遮罩层,这样子就可以避免数据出错了。遮罩效果其实非常简单,就是用一个div挡住屏幕即可,我们只需事先写好一个顶层的di原创 2015-11-03 17:04:17 · 3494 阅读 · 0 评论 -
【兼容】浏览器兼容那些事
关于浏览器兼容的一些感悟。原创 2015-10-04 14:27:26 · 801 阅读 · 0 评论 -
【jQuery】复选框的批量处理:全选、非全选
最近工作都在写jQuery,事实上我并没有系统学过js,今天跟大家分享一下最近写的一个有关复选框的批量处理。测试 全选 城市 广州市 深圳市 杭州市 这里的复选框批量处理是删除操作。当选择“全选”按钮时,其他的复选框也会原创 2015-07-27 00:24:31 · 3424 阅读 · 0 评论 -
【CSS】纯CSS实现三级导航(模板)
以前觉得级联导航实现应该很简单,就是使用css的hover属性来实现就可以了,于是也没有过多地留意实践。可是在最近的面试当中,当被问到这个问题的时候才明白,很多东西不能想当然地以为这样做就可以了,不单只是知道大概的思路就认为OK了,更需要实际的动手能力。后来就实际操作了级联菜单的实现,借此机会把它弄成一个模板来和大家一起学习。以下是HTML部分:纯css级联导航原创 2015-06-14 13:04:52 · 2605 阅读 · 1 评论 -
【JSP】访问WEB-INF下的JSP页面
JSP页面放在WEB-INF目录下的访问方法原创 2015-03-30 21:48:25 · 1821 阅读 · 0 评论 -
【JS】判断用户名和密码是否为空
在用户登录页面我们通常需要过滤用户的一些输入,如空格输入或者什么都不输等等,并在用户输入完成时给出红色字的错误提示,在这里分享一些自己写的代码。首先在login.jsp页面中会有一个用户名和密码的提交表单:原创 2015-04-03 10:49:34 · 7588 阅读 · 0 评论 -
【jQuery】使用jQuery的clone()方法来克隆元素时,如何保持id的唯一性
大家都知道,同一个HTML页面中,不宜出现1个以上相同名称的id。但有时候需要使用jQuery框架的clone()来复制相同内容(附带样式),假如是使用了id号的获取方式,即$(‘#***’) 那么复制后得到新的内容也会把id号复制过来了,这时候就会出现一个页面出现2个或多个相同的id,比如:$('#single').click(function(){ $('#single-answer')原创 2015-01-27 23:26:48 · 16763 阅读 · 0 评论 -
【CSS】CSS选择器优先级及!important属性
CSS的选择器是有权重的,当不同选择器的样式设置有冲突时,会采用权重高的选择器设置样式。权重(即优先级)的规则如下,权重越高,优先级越高:同一个元素可以使用多个规则来指定它的同一样式(比如字体颜色),每个规则都有自己的选择器。显然最终只有一个规则起作用(不可能一个字既是红色又是绿色),那么该规则的特殊性最高,特殊性即css优先级。很多人仅仅知道选择器优先级ID>class>元素选择器,而不知道原创 2015-02-03 10:18:40 · 25711 阅读 · 0 评论 -
【JS】JavaScript中对象的创建与原型模式
JavaScript中对象的创建与原型模式原创 2015-02-27 23:59:43 · 1184 阅读 · 0 评论 -
【JS】浅述JS常用的正则表达式
Javascript中的正则表达式(regular expression)提供了强大的模式匹配和文本检索与替换的函数,常用于数据提交到服务器之前先进行简单的表单验证,以节约大量的服务器端系统资源,并提供更好的用户体验。下面简单介绍一下javascript中如何使用正则表达式。有2种创建方法,分别是采用new运算符创建和采用字面量方式(常用)。方法一:采用new运算符创建var box=原创 2015-02-24 11:05:20 · 856 阅读 · 0 评论 -
【Servlet】web.xml中servlet的配置方法
关于servlet的配置相信很多人都知道。 别名 servlet路径 别名 访问路径(以/开头) 如果访问servlet的网页是直接放在WebRoot目录下,没有放在一个独立的文件夹内:这样子配置servlet就很简单了,在web.xml里添加以下代码: loginServlet c原创 2015-02-11 23:40:05 · 2115 阅读 · 0 评论 -
【JS】原生js实现拖拽功能基本思路
如果要设置物体拖拽,那么必须使用三个事件,并且这三个事件的使用顺序不能颠倒。onmousedown:鼠标按下事件onmousemove:鼠标移动事件onmouseup:鼠标抬起事件 拖拽的基本原理就是根据鼠标的移动来移动被拖拽的元素。鼠标的移动也就是x、y坐标的变化;元素的移动就是style.position的 top和left的改变。当然,并不是任何时候移动鼠标都要造成原创 2015-02-05 08:58:30 · 11805 阅读 · 0 评论 -
【JSP】JSP项目相对路径与绝对路径问题
很多人写网页的时候都会用相对路径,也不知道是不是习惯问题吧,其实我以前也一直都是用相对路径的,直到最近做项目的时候出现路径问题。我想应该有不少人遇到过这样的情况:当使用服务器跳转,例如:forward指令的时候,会发现,页面的样式没了。其实这就是路径的问题。 同样一个页面,客户端跳转与服务器跳转的相对路径是不一样的。服务器的跳转都是相对于http://localhost:8080/原创 2015-02-01 10:32:55 · 2706 阅读 · 1 评论 -
【JS】JavaScript中的私有变量与特权方法
严格讲的话,在JavaScript没有私有成员的概念,因为所有对象属性都是公开的。不过,一般在函数中定义的变量,可以认为是私有变量,因为不能在函数外部访问这些变量,私有变量包括参数、局部变量和在函数内部定义的其他函数。 如果在函数内部创建一个闭包,那么闭包通过自己的作用域链也可以访问函数的私有变量,因此可以创建用于访问私有变量的公有方法,一般称有权访问私有变量和私有函数原创 2015-01-22 18:29:28 · 2013 阅读 · 1 评论 -
【CSS】响应式图片
原图:(宽1680px,高1050px)可是,我们平时做网站的时候当中的图片大于可是窗口时,就会出现横的滚动条、图片被截断的情况,如下图所示:这时候我们可以使用响应式技术来解决:响应式图片就是当浏览器屏幕窗口大小改变时,图片会随着窗口大小的改变而改变,不会出现图片被截断或出现横滚动条。HTML代码: CSS代码:img{ widt原创 2015-04-14 10:06:06 · 1715 阅读 · 0 评论 -
【CSS】Windows下安装sass和compass失败的一个解决办法
因为sass和compass依赖于ruby环境,所以装之前先确认装了ruby。可到官网下载最新版ruby安装包http://rubyinstaller.org/downloads/在安装的时候,请勾选Add Ruby executables to your PATH这个选项,添加环境变量,不然以后使用编译软件的时候会提示找不到ruby环境:Sass和compass安装:原创 2015-04-25 22:36:57 · 2671 阅读 · 0 评论 -
【HTML】Canvas(4)-进阶
canvas高级功能 放大与缩小:用scale函数来实现图形的放大和缩小 原型:scale(x,y); x表示在x轴进行缩放,即水平缩放;y表示在y轴上进行缩放,即竖直方向缩放。 放大:var c=document.getElementById('mycanvas'); var ctx=c.getContext('原创 2015-04-06 23:23:20 · 1324 阅读 · 0 评论