这次提供三个一起,呵呵,分别是:密码强度检测、高亮度指定元素、JS动态加载~~
js 代码
-
-
-
-
- function Password() {};
- Password.check = function(pwd, tipsDivId) {
- var id = Password.getResult(pwd);
- var msg = ["密码过短", "密码强度差", "密码强度良好", "密码强度高"];
- var sty = [-45, -30, -15, 0];
- var col = ["#999999", "#66CC00"];
- var sWidth = 300, sHeight = 15;
- var Bobj = $(tipsDivId);
- if (!Bobj) return;
-
- with (Bobj) {
- style.fontSize = "12px";
- style.width = sWidth + "px";
- style.height = sHeight + "px";
- style.lineHeight = sHeight + "px";
- }
- var html = "";
- for (var i = 0; i < msg.length; i ++) {
- var bg_color = (i <= id) ? col[1] : col[0];
- html += "" + bg_color + ";'> ";
- }
- Bobj.innerHTML = html;
- Bobj.title = msg[id];
- };
- Password.getResult = function(pwd) {
- if (pwd.length < 6) return 0;
- var ls = 0;
- if (pwd.match(/[a-z]/ig)) ls++;
- if (pwd.match(/[0-9]/ig)) ls++;
- if (pwd.match(/(.[^a-z0-9])/ig)) ls++;
- if (pwd.length < 6 && ls > 0) ls--;
- return ls;
- };
-
-
-
-
-
- function HighLight() {};
- HighLight.options = {
- id : null,
- className : null,
- interval : 255,
- times : 3000
- };
- HighLight.prototype = {
- exe : function(options) {
- var _options = {};
- if (typeof(options) == 'object') {
- _options.id = options.id || HighLight.options.id;
- _options.className = options.className || HighLight.options.className;
- _options.interval = options.interval || HighLight.options.interval;
- _options.times = options.times || HighLight.options.times;
- }
- if (_options.id == null || !$(_options.id)) {
- alert('必须指定要高亮度显示的元素ID!');
- return false;
- } else if (!_options.className || typeof(_options.className) != 'string' || _options.className.strip() == '') {
- alert('请指定高亮度显示的CSS名称!');
- return false;
- }
- var elt = $(_options.id);
- if (elt.highLightHandle != null) return;
- elt.highLightHandle = setInterval(function() {
- Element.toggleClassName(elt, _options.className);
- }, _options.interval);
- window.setTimeout(function() {
- clearInterval(elt.highLightHandle);
- Element.removeClassName(_options.className);
- elt.removeAttribute('highLightHandle');
- }, _options.times);
- return true;
- }
- };
-
-
-
-
-
-
- function JsLoader() {};
- JsLoader.loaded = [];
- JsLoader.prototype = {
- _path : null,
- _head : null,
-
-
-
- require : function(jsPath, callback) {
- if (!this._check(jsPath)) return false;
- if (this._isload(jsPath)) return true;
- this._ajaxLoad(callback);
- return true;
- },
- load : function(jsPath, callback) {
- return this.require(jsPath, callback);
- },
- _check : function(jsPath) {
- if (!jsPath) {
- alert('请指定要加载的JS路径!');return false;
- }
- var head = document.getElementsByTagName('head');
- if (!head || head.length < 1) {
- alert('文档对象document必须有HEAD头!');return false;
- }
- this._path = jsPath;
- this._head = head[0];
- return true;
- },
- _isload : function(jsPath) {
- for (var i = 0; i < JsLoader.loaded.length; i ++) {
- if (JsLoader.loaded[i].toLowerCase() == jsPath.toLowerCase()) return true;
- }
- JsLoader.loaded[JsLoader.loaded.length] = jsPath;
- return false;
- },
- _ajaxLoad : function(callback) {
- var head = this._head;
- base.request(this._path, function(xmlHttp, error) {
- var script = document.createElement('script');
- script.type = "text/javascript";
- script.text = xmlHttp.responseText;
- head.appendChild(script);
- if (!callback) return;
- try {
- if (typeof(callback) == 'function') callback();
- else eval(callback);
- } catch (ex) {alert(ex.message);};
- });
- }
- };
分享到:
相关推荐
动态加载是 jsTree 的核心特性之一,它允许在用户滚动或展开树节点时按需加载数据,而不是一次性加载所有数据。这种机制对于处理大量数据特别有用,因为它减少了初始页面加载时间,提高了用户体验。通过设置适当的...
在网络安全日益重要的今天,密码强度测试是确保用户创建强密码的重要工具。JavaScript可以方便地实现在客户端进行密码强度检测,为用户提供即时反馈,帮助他们创建更安全的账户。 实现JavaScript密码强度测试的基本...
String过滤敏感字
在"JavaScript动态网页开发详解——源文件"中,我们可以深入学习到JavaScript在网页开发中的应用技巧。此资料可能包含了JQUERY的官方实例全集,jQuery是一个高效、简洁且富有创造性的JavaScript库,它极大地简化了...
标题中的“用vanillaJS编写的密码强度检查器”是一个基于纯JavaScript(即不依赖任何库或框架,也就是vanillaJS)的项目,用于评估用户输入的密码的安全性。这样的工具通常通过分析密码的长度、字符复杂性、是否包含...
页面加载过程中,JavaScript(js)的执行对用户感知的页面加载速度有着直接影响。在这个主题下,我们将深入探讨JavaScript如何影响页面加载,以及如何利用它来改善用户在页面加载过程中的体验。 1. **JavaScript与...
可以使用CSS类和JavaScript来动态更改元素的样式。 5. **反馈提示**:除了颜色变化外,还可以提供文字反馈,告知用户密码为何被评为弱、中或强,以及如何提升其安全性。 6. **异步验证**:在某些情况下,你可能还...
在JavaScript中,我们可以轻松实现这种自动动态的tips提示信息框效果,以提高用户体验。下面将详细介绍如何利用JavaScript来创建这样的小气泡框。 首先,我们需要理解基本的HTML结构,通常一个提示信息框包括一个...
【fnt工具——程序图片字体工具】是一种专为移动开发设计的高效字体处理软件,相比传统的bitmapfnt工具,它提供了更快捷、便利的操作体验。在移动应用开发中,字体的处理是一项重要的工作,因为良好的文字展示能直接...
leaflet工具类,绘制点、线、面、文本、高亮、地图监听、地图加载、事件机制
在本资源中,我们讨论的是一个关于“动态加载提示模块”的源码,这在编程中是一个重要的用户体验设计元素,特别是在加载大型数据或执行复杂操作时,动态加载提示可以提供反馈,让用户知道程序正在运行且即将完成。...
该压缩包文件“IOS应用源码——多种样式的圆形动态加载特效.zip”主要包含一个iOS应用的源代码,用于实现不同样式的圆形动态加载效果。这个应用可能是一个UI组件库,开发者可以将其集成到自己的iOS项目中,为加载...
【标题】:“three.js——js3D技术游戏开发” 这篇博客主要探讨了使用three.js库进行JavaScript 3D游戏开发的技术细节。three.js是WebGL的一个强大框架,它简化了在浏览器中创建复杂的3D场景和交互式应用程序的过程...
可以使用在线工具或本地库,如shapefile-js,将SH数据转换成JavaScript友好的格式。 2. 在JavaScript代码中,使用ArcGIS API的`esri/geometry/Geometry`类解析GeoJSON数据。 3. 创建`esri/Graphic`对象,将解析后的...
如果一段html嵌套过多,在js中获取还是比较麻烦的,我写了几套方案,大家可以参考参考,如果你有...元素多层嵌套,JS获取问题</title> </head> <body> <span>span <span>span <span>1 <spa
总之,这个动态加载Ext.tree的JSON数据工具类是解决前端与后端数据交互问题的一个实用方案,通过合理的编程技巧,可以实现高效、流畅的用户体验。在开发过程中,理解并掌握这种数据加载机制对于提升Web应用性能至关...
《项目架构那点儿事》——工具类,你喜欢你就拿去 在软件开发中,工具类是程序员们常用的一种代码组织形式,它们通常包含了各种实用功能,可以极大地提高我们的工作效率。这篇博客将探讨如何有效地利用和设计工具类...
在IT行业中,动态进度条是常见的一种用户界面元素,它能直观地展示任务的执行进度,给用户带来更好的交互体验。本项目利用layui-progress、element、jQuery和JavaScript技术,巧妙地设计了一个动态进度条,旨在提供...
"js函数库——打包上传"这个主题涉及到的主要是如何整理、打包和上传JavaScript库的过程,这在分享或部署项目时尤为重要。 首先,我们来了解JavaScript函数库的作用。函数库通常包含各种功能模块,如DOM操作、动画...
在三维Web开发领域,Three.js是一个非常流行的JavaScript库,它为浏览器提供了强大的3D图形渲染功能。本主题将深入探讨如何使用Three.js加载JSON格式的三维模型,以及与BIM(建筑信息模型)相关的应用。 一、Three....