WEB-Front
文章平均质量分 53
老马历写记
这个作者很懒,什么都没留下…
展开
-
通过网址注入的XSS问题及引发的base64编码应用探讨
url地址输入prompt等js代码就会引发xss问题,本文就url注入xss问题进行模拟、原理分析,建议使用base64编码、解码进行url携带js代码处理。原创 2019-02-12 11:02:31 · 2384 阅读 · 0 评论 -
jqGrid 如何shrinkToFit出现水平滚动条 及页面有垂直滚动条时表格会超出父容器处理
jqGrid 如何出现水平滚动条及页面有垂直滚动条时表格会超出父容器处理。shrinkToFit、autowidth参数会影响表格是否会出现水平滚动条,列宽是否会重新计算;width参数可以设置jqgrid初始宽度。原创 2019-04-05 10:08:03 · 2260 阅读 · 0 评论 -
jqGrid 右键菜单contextmenu简单实现
鼠标右键单击表格弹出快捷菜单可以查看、编辑、新增、删除行记录,这是很多项目的常见操作,jqGrid也可以实现类似功能。本文讲述如何依赖bootstrap-contextmenu快速实现jqGrid右键菜单功能。原创 2019-03-28 11:18:11 · 2380 阅读 · 1 评论 -
jquery ajax请求统一封装 不发请求也走success回调 get请求缓存不调用处理
本文通过jquery ajax请求封装实现:1)请求统一编程模型,不管是否发送请求都可以走success回调,然后对返回结果数据进行统一处理;2)通过参数设置时间戳,解决get请求缓存问题;原创 2019-04-17 08:45:15 · 532 阅读 · 0 评论 -
jqGrid beforeSaveCell和afterSaveCell实现单元格编辑复杂业务逻辑验证及其它列关联更新
jqGrid beforeSaveCell和afterSaveCell实现单元格编辑复杂业务逻辑验证及其它列关联更新。editrules一般基于内容的格式、值范围验证,beforeSaveCell则可用于复杂的业务逻辑验证。afterSaveCell则可用于表格其它列关联更新。原创 2019-04-26 08:54:26 · 3707 阅读 · 0 评论 -
js 模板引擎 art-template 完整使用案例,如何渲染、外部函数注册调用、if else each等流程控制
js 模板引擎 art-template 完整使用案例,如何渲染、外部函数注册调用、if else each等流程控制,包括:js type="text/html" 模板定义;template过滤器注册,同早期版本的helper函数;template模板渲染;url参数解析原创 2019-04-28 10:57:10 · 1552 阅读 · 0 评论 -
前端iframe框架在火狐、谷歌、Safari浏览器下如何快速查看页面地址src
有个饮料企业进销存应用,采用的是每个TAB页加载一个iframe,然后用iframe加载jsp页面。在实际开发、测试中,往往需要快速定位到当前Active的TAB页对应的Iframe加载的是具体哪个页面,方便修改。以火狐、谷歌和Safari浏览器为例,简单看下如何快速查看iframe加载的页面信息。1、火狐浏览器鼠标右键,在此框架菜单下有很多二级菜单,比较常用的有:1)仅显示此框架,当前页...原创 2019-04-24 07:00:03 · 4193 阅读 · 3 评论 -
jqGrid shrinkToFit=true 动态设置列显示showCol、列隐藏列hideCol引起的表格宽度异常处理
jqGrid可通过hideCol, showCol函数动态设置列显示、列隐藏;当shrinkToFit=true时,动态设置显示列、隐藏列可能会导致表格宽度异常,此时可调用jqGrid的resizeGrid函数进行表格宽度重新计算。原创 2019-04-20 10:25:25 · 2554 阅读 · 0 评论 -
jqgrid基于onSelectRow和onSelectAll实现选中行汇总合计
基于jqGrid的两个事件:onSelectRow(选中、取消选中行),onSelectAll(全选、取消全选),我们可以实现选中行汇总合计。原创 2019-04-25 08:10:13 · 3886 阅读 · 0 评论 -
jqGrid可编辑模式下 单元格内容不能复制处理
jqGrid不可编辑模式下,鼠标点击单元格内容并选中要复制的内容,然后就可以复制、粘贴;然而在可编辑模式下则行不通,一旦单元格鼠标点击后,若该列不可编辑则表格会失去焦点,从而导致选中的内容丢失,因此无法进行复制、粘贴,怎么办?其实方案挺简单,就是在鼠标松开前进行复制,后续再粘贴原创 2019-03-27 10:18:19 · 1355 阅读 · 0 评论 -
jqgrid setCell 单元格赋值空字符串 无效处理
最近在使用jqgrid给单元格赋值时发生一个诡异的问题,grid.jqGrid('setCell', rowId, colName, ''),给单元格赋空字符串居然无效。查看jqgrid源码后,给单元格赋值需要注意,请使用如下两个方法:1)grid.jqGrid('setCell', rowId, colName, ' ') // 赋值 空格2)grid.jqGrid('setCell', rowId, colName, '', '', '', true) // 带上强制刷新标记原创 2019-03-24 11:12:07 · 3936 阅读 · 0 评论 -
jqGrid multiselect多选模式下 multiboxonly设置为true 点击行原选中行会被重置问题处理
jqGrid multiselect多选模式下 multiboxonly设置为true 点击行原选中行会被重置问题处理,除了设置multiboxonly=true外,还需要设置multikey.原创 2019-03-26 13:53:52 · 2534 阅读 · 0 评论 -
基于BootStrap modal模态框 类浏览器Window对象的alert confirm prompt框实现
基于BootStrap modal组件实现的一个类似window对象alert框、confirm框和prompt框,涉及函数定义字符串获取、立即调用函数表达式、正则表达式运用,modal组件框调用等知识点。原创 2019-02-23 21:09:53 · 2335 阅读 · 2 评论 -
csdn markdown编辑器 表格使用说明及列宽度调整、对齐方式等问题处理
本文讨论了csdn markdown编辑器 表格使用说明及不能调整宽度等问题处理。我们可以通过使用在markdown编辑器直接插入html片段,比如<table>代替编辑器表格,或根据css计算列宽原理实现表格列宽调整。涉及markdown表格语法、css调整表格首列宽度、css换行等知识点。同时也希望csdn官方能加强、完善markdown编辑器表格功能。原创 2019-02-25 11:11:37 · 6926 阅读 · 2 评论 -
jquery dom 节点append、before、after、prepend、insertBefore、empty、remove等添加、移除操作汇总
之前有个项目前端页面会根据权限进行DOM操作,比如:增加新增、编辑按钮,增加表格操作列等,涉及节点新增、某个节点前后插入、节点移除等操作,在此,对jquery DOM节点的各种操作做一总结,append, appendTo, prepend, prependTo, before, after, insertBefore, insertAfter。原创 2019-03-14 09:03:29 · 1237 阅读 · 0 评论 -
css attribute属性模糊匹配、nth-child元素位置索引匹配等复杂选择器使用总结
css有很多选择器,常见的有:根据id、class、html标签等,除此之外还有一些复杂的选择器,比如:按属性模糊匹配、查找紧接在div元素之后的所有p元素、最后一个child、empty空元素等复杂选择器、按An+B索引位置查找元素等,本文就css 复杂选择器做一总结。原创 2019-03-15 10:31:44 · 1403 阅读 · 0 评论 -
jquery ajax springmvc 如何将多个请求封装成一个请求?
在做前端页面优化时,大厂都会通过将多个资源文件以逗号分隔,一次性下载下来,减少请求数,从而提升页面加载速度。除了静态资源请求外,在页面初始化时,有时我们会用ajax发起多个异步请求,若这些请求有先后顺序则更难处理,还要确保请求A调用结束才可调用请求B。一来会增加页面加载时间,还会增加开发难度、影响代码质量。本文讨论 jquery ajax springmvc 如何将多个请求封装成一个请求。原创 2019-03-18 12:57:35 · 718 阅读 · 0 评论 -
jquery bootstrap-select多选组件使用指南
jquery bootstrap-select多选组件使用指南,包括bootstrap-select如何上手,核心配置项说明,常用api方法演示,案例展示。原创 2019-03-13 15:44:59 · 6928 阅读 · 0 评论 -
谈腾讯地图web api如何实现类似百度地图内置的城市切换、关键字输入提示功能
PC WEB端新增客户的时候需要填写客户地址和联系人信息,包括:省市区、街道、详细地址和经纬度以及联系人、固话和移动电话。获取客户地址信息之前用的是百度地图,由于小程序中客户拜访时,需要对客户进行定位、距离计算,所以客户经纬度都转换成了gcj02坐标。由于之前的百度地图经纬度坐标是百度自己坐标,因此需要获取经纬度时进行坐标转换,根据坐标点在百度地图上显示时需要二次转换,所以打算将百度地图替换成腾讯地图。本文讨论基于腾讯地图如何实现类似百度地图的城市切换、关键字搜索提示功能。原创 2019-03-19 13:28:49 · 4363 阅读 · 0 评论 -
jqgrid使用colModel的classes属性 实现单元格内容过长自动截取带省略号和强制换行
jqgrid单元格默认不换行,超出部分被隐藏,鼠标移上去会显示全部内容,原因是单元格设置了overflow:hidden和title属性。我们可以通过colModel的classes属性,给列设置class改变jqgrid单元格默认显示样式。比如单元格内容强制换行,单元格内容超出部分用省略号显示。原创 2019-03-29 18:29:58 · 4070 阅读 · 0 评论 -
jqGrid 基于beforeSelectRow事件和ui-state-disabled 禁止行选中和动态设置某行不可选中
jqGrid 基于beforeSelectRow事件和ui-state-disabled 实现行不可选中,禁止行选中,动态设置某行不可选中。原创 2019-05-08 10:56:20 · 4882 阅读 · 3 评论 -
jqGrid colMenu列菜单 排序、显示隐藏、分组统计,添加、删除菜单项使用指南
在上篇博文“jqGrid 右键菜单contextmenu简单实现”中,探讨了jqGrid右键自定义菜单的实现,比如可以使用右键菜单实现统一的行记录编辑、删除、新增入口。本文探讨jqGrid自带的列快捷菜单colMenu使用细节:列排序,列过滤,列分组,列显示、隐藏,菜单项添加、删除等。原创 2019-05-06 09:15:09 · 1595 阅读 · 0 评论 -
jqGrid 如何实现高度自适应 跟随窗口尺寸变动自动调整高度
jqGrid可以在构建的时候通过height参数来设置表格初始高度,也可以在后续通过调用setGridHeight函数来动态设置表格高度。本文利用jqGrid的setGridHeight函数和window的resize事件实现jqGrid高度自适应,随窗口尺寸变动自动调整表格高度。原创 2019-05-14 08:42:46 · 7154 阅读 · 0 评论 -
CSS3新特性总结及CSS组件、特效汇总
本文分2部分:之前写的CSS3新特性详解篇,共6篇博文总结;常见的一些CSS组件、效果汇总(不包括BootStrap等前端框架已实现的CSS组件)。常用组件、效果包括:基于border的各种箭头实现,滤镜使用等。原创 2019-07-18 14:49:17 · 3782 阅读 · 2 评论 -
CSS3新特性详解(三):CSS3 2D转换和3D转换 transform 变形使用详解
transform是一个相对比较难的属性,2D转换还好点,3D转换由于涉及空间旋转、透视等比较难以理解,但是我们只要掌握transform本质上就是一系列变形函数,分别是translate位移,scale缩放,rotate旋转,skew扭曲和matrix复合变换,再结合些许空间透视概念,那么我们一定可以驾驭transform原创 2019-07-07 15:27:05 · 2883 阅读 · 2 评论 -
JavaScript JS利用location对象获取页面url、服务器地址、端口号、项目根路径和查询参数
本文讲述JavaScript简称JS如何利用location对象获取页面url地址(href),服务器地址(hostname),服务器端口号(port),context path,项目部署路径或项目根路径及url查询参数解析,涉及location对象各属性读取、字符串查找和截取、正则表达式应用等知识点。原创 2019-07-29 09:43:30 · 4652 阅读 · 0 评论 -
CSS3新特性详解(六):线性渐变Linear Gradients和径向渐变Radial Gradients使用说明
继之前介绍了CSS3新特性,共5篇后,本文继续讨论CSS3的另外一个特效属性:颜色渐变Gradients,包括线性渐变Linear Gradients和径向渐变Radial Gradients。本文比较详细的介绍了渐变Gradients的使用说明,尤其对渐变中的2个难点:渐变中的颜色占比问题和径向渐变的形状位置设置、形状大小设置做了比较详细的解释并且提供DEMO。原创 2019-07-17 13:45:25 · 1241 阅读 · 0 评论 -
多TAB页管理管理后台 用iframe加载页面使用注意事项:iframe高度自适应,内外部js相互调用等
使用iframe实现多tab页后台管理是一种普遍的处理方式,尤其在企业信息化WEB应用中更是常见。使用iframe实现多tab页虽说很简单,但在实际项目应用中也需要注意几个问题:iframe高度自适应问题,iframe页面切换内存泄漏问题,iframe页面js代码与父页面js代码如何相互调用问题。原创 2019-07-30 11:06:41 · 3488 阅读 · 3 评论 -
Javascript IEEE754标准的浮点数二进制表示、浮点数运算及Js为啥0.1+0.2!=-0.3
之前写过一篇“谈谈JavaScript的算数运算、浮点数二进制表示舍入误差及比较、类型转换和变量声明提前问题”,当时主要是阐述浮点数运算产生的舍入误差及js类型转换和变量申明提前问题,所以只是略微提及了js中浮点数二进制表示问题。现在回过头来看,如果不掌握IEEE754标准的浮点数二进制表示,浮点数运算原理,是不会彻底理解js浮点数运算的舍入误差及类似0.1+0.2!=0.3浮点数比较问题。本文讲述了按IEEE754标准浮点数二进制如何表示,浮点数加法运算原理,0.1+0.2的完整计算演示。原创 2019-07-25 11:06:07 · 3088 阅读 · 2 评论 -
分享一张JavaScript正则表达式脑图和来自MDN的正则特殊字符说明
分享一张来自w3cscholl的JavaScript正则表达式脑图和来自MDN的正则特殊字符说明。转载 2019-08-03 07:56:44 · 810 阅读 · 0 评论 -
谈谈 javascript js 空字符串''==0为true的比较问题
js在进行空字符串''==0比较时会得到true,稍不留神可能会给程序埋了个天大的坑,为此我们需要了解js==比较运算机制,避免''==0为true。原创 2019-08-23 13:51:54 · 1057 阅读 · 0 评论 -
CSS3新特性详解(四):CSS3过度transition和动画animation @keyframes规则详解
本文讨论CSS3的过渡transition和动画animation属性。包括transition过渡属性使用说明、注意事项;animation动画属性的使用说明、注意事项,@keyframes规则定义;案例演示。原创 2019-07-11 15:13:38 · 2874 阅读 · 0 评论 -
CSS3新特性详解(五):多列columns column-count和flex布局
简单来说Html Dom元素就2类:行内元素和块级元素,前者在行内显示(span等),后者换行显示(div等)。所谓布局,比如早期的4大布局:块布局、行内布局、表格布局、定位布局,多半解决的是块级元素行内显示问题,从早期的table布局,到后来的div+css布局,再到后来的多列布局、flex布局等。本文详细讲解了table-cell的使用,及多列布局columns、column-count和flex布局的详细使用说明。原创 2019-07-15 09:16:51 · 13978 阅读 · 0 评论 -
CSS3新特性详解(二):CSS3 字体@font-face详解、如何创建和修改woff字体文件及text-shadow等文本效果
在 CSS3 之前,web 设计师必须使用已在用户计算机上安装好的字体。通过 CSS3 @font-face,前端开发人员可以使用他们喜欢的任意字体,如Font Awesome fa字体,Glyphicons字体图标等,甚至可以使用自定义字体文件。本文还讲述了text-shadow 文本阴影、overflow:ellipsis 文本超出省略号显示等文本效果,通过text-stroke属性,对文字进行背景色秒变可实现文字变细效果。原创 2019-06-30 11:18:43 · 3592 阅读 · 0 评论 -
jqGrid subgrid 使用指南:参数、方法、事件说明及一个完整的DEMO演示
jQuery DataTable有类似subgrid功能,实现也比较简单,只要设置列class “details-control”,并绑定td.details-control的click事件,在事件中实现对应行row.child(subgrid内容).show() 或 hide()即可。jqGrid同样提供了subgrid功能,而且实现更加简单。通过表格构建时设置subgrid=true,监听事件subGridRowExpanded并实行subgrid内容填充即可实现subgrid完整功能。原创 2019-05-20 08:37:10 · 4228 阅读 · 0 评论 -
jqGrid 多选模式下 表格行单元格按钮点击后 利用stopPropagation阻止事件冒泡 从而阻止该行被选中
jqGrid 多选模式下 表格行单元格按钮点击后 利用stopPropagation阻止事件冒泡 从而阻止该行被选中。假设表格某列formatter是一个操作按钮组合,那么点击按钮后,我们发现该按钮所在行也会被选中。我们可以利用事件冒泡机制,阻止按钮事件向上冒泡从而实现按钮点击与该行是否选择隔离。原创 2019-05-13 10:10:21 · 850 阅读 · 1 评论 -
jqGrid 表格分组 grouping 使用汇总 动态展开收起分组 新增、删除、编辑行自动更新分组统计
jqGrid表格自带group分组功能,包括表头Header分组和表格内容分组功能,本文讨论表格行如何实现分组统计;表格行新增、删除时如何自动更新分组统计;表格行汇总列单元格编辑室如何更新分组统计;如何动态实现分组展开、收起功能。原创 2019-05-28 07:22:41 · 4815 阅读 · 0 评论 -
jQuery 滚动条插件nicescroll 使用方法、常见配置和事件回调使用说明
nicescroll是一款基于jQuery的滚动条插件,使用简单,功能又比较强大,较mCustomScrollbar而言功能相差无几,但是所需资源文件少,DOM结构也简单,比较遗憾的是nicescroll没有直接的事件触发。本文除介绍nicescroll的使用和参数配置说明外,将着重介绍nicescroll的事件回调使用说明。原创 2019-06-20 09:39:38 · 8303 阅读 · 2 评论 -
ztree autoCheckTrigger=true时 子节点复选框选中 导致父节点onCheck触发多次问题处理
ztree实现复选框功能、级联选中,并且子节点选中时,父节点自动选中,子节点取消选中(若所有子节点都没有选中)则父节点也会自动取消选中,check配置如下:check:{enable:true,chkStyle:"checkbox",chkboxType: { "Y": "p", "N": "p" },autoCheckTrigger: true},该check配置有个问题,子节点每次选中时,父节点都会触发onCheck事件,导致父节点会多次向后台发送请求。原创 2019-06-05 08:04:07 · 1594 阅读 · 0 评论 -
jqGrid 动态设置行选中、取消中选中 setSelection使用注意事项
jqGrid可以使用setSelection方法动态设置某行选中或不选中,但是setSelection其实是一个toggle函数,该行原本选中调用该函数后则取消选中,否则选中。为此在实际使用过程中,我们需要特别注意这个坑,并适当修改setSelection函数,设置行选中则无论该行之前是否选中,该行都将被选中。原创 2019-06-18 09:00:49 · 11056 阅读 · 0 评论