1)javascript让页面标题滚动效果

代码如下:

<title>您好,欢迎访问我的博客</title>
<script type="text/javascript">
function scroll() {
//获取title信息。
var titleInfo = document.title;
//获取title第一个字符(数字、字母)。
//注释:字符串中第一个字符的下标是 0。如果参数 index 不在 0 与 string.length 之间,该方法将返回一个空字符串。
var firstInfo = titleInfo.charAt(0);
//获取第二位到最后的信息。
var lastInfo = titleInfo.substring(1, titleInfo.length);
//拼接输出信息
document.title = lastInfo + firstInfo;
}
//使用setInterval()方法,每隔0.5s执行
setInterval("scroll()", 500);
</script>

2)屏蔽鼠标右键(for IE8&IE10,其它IE版本或浏览器有待验证)

<script type="text/javascript">
//屏蔽鼠标右键
document.oncontextmenu = function()
{
event.returnValue = false;
}
</script>

3)回车键执行目标脚本

假如页面中有个LinkButton做的查询按钮(ID为lbtSearch),回车键实现查询,代码如下:

<script type="text/javascript">
//回车键实现查询
document.onkeydown = function(e)
{
if(!e) e = window.event;//IE中是window.event,Firefox中是e
if((e.keyCode || e.which) == 13)
{
var obj = document.getElementById("lbtSearch");
obj.click();
}
}
</script>

4)屏蔽退格键(BackSpace),for IE

代码如下:

<script type="text/javascript">
//屏蔽退格键
document.onkeydown = function()
{
if(event.keyCode == 8)
{
if((event.srcElement.tagName.toLowerCase() == "input" || event.srcElement.tagName.toLowerCase() == "textarea") && event.srcElement.isContentEditable == false)
{
event.returnValue = false;
}
}
}
</script>

这里我用的是tagName作元素类型筛选,也可以用type作类型筛选( event.srcElement.type == "text" || event.srcElement.type == "password" || event.srcElement.type == "textarea" )

5)背景自动变色

代码如下:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>背景自动变色</title>
<script type="text/javascript">
var Arraycolor = new Array("#00FF66", "#FFFF99", "#99CCFF", "#FFCCFF", "#FFCC99", "#00FFFF", "#FFFF00", "#FFCC00", "#FF00FF");
var n = 0;
function turncolors()
{
n++;
if (n == (Arraycolor.length - 1)) n = 0;
document.bgColor = Arraycolor[n];
setTimeout("turncolors()", 1000);
}
turncolors();
</script>
</head>
<body>
<p>背景自动变色</p>
</body>
</html>

6)简易方法判断浏览器的类型和版本

如何判断浏览器的类型和版本?使用JavaScript的内置对象 navigator 的属性userAgent的值来判断(navigator.userAgent)。

navigator是javascript的内置对象,通常用于检测浏览器与操作系统的版本。 常用的属性有:

  • appCodeName -- 浏览器代码名的字符串表示
  • appVersion -- 浏览器版本信息的字符串表示
  • cookieEnabled -- 如果启用cookie返回true,否则返回false
  • javaEnabled -- 如果启用java返回true,否则返回false
  • platform -- 浏览器所在计算机平台的字符串表示
  • plugins -- 安装在浏览器中的插件数组
  • taintEnabled -- 如果启用了数据污点返回true,否则返回false
  • userAgent -- 用户代理头的字符串表示(就是包含浏览器版本信息等的字符串)

下面说明一段js正则表达式:

 var str = "123123";
var reg = /123/;
alert(reg.test(str));

上述js作用是检测 str 这一个字符串中是否包含123这样的字串。

进入正题,直接上代码(ExtJs使用的就是这种方式判断的):

 <script type="text/javascript">
var ua = navigator.userAgent.toLowerCase();
function check(r)
{
return r.test(ua);
}
/**
* return IE,IE6,IE7,IE8,IE9,Chrome,Firefox,Opera,WebKit,Safari,Others
*/
function getBrowserName()
{
var browserName;
var isOpera = check(/opera/);
var isChrome = check(/chrome/);
var isFirefox = check(/firefox/);
var isWebKit = check(/webkit/);
var isSafari = !isChrome && check(/safari/);
var isIE = !isOpera && check(/msie/);
var isIE7 = isIE && check(/msie 7/);
var isIE8 = isIE && check(/msie 8/);
if(isIE8)
{
browserName = "IE8";
}else if(isIE7)
{
browserName = "IE7";
}else if(isIE)
{
browserName = "IE";
}else if(isChrome)
{
browserName = "Chrome";
}else if(isFirefox)
{
browserName = "Firefox";
}else if(isOpera)
{
browserName = "Opera";
}else if(isWebKit)
{
browserName = "WebKit";
}else if(isSafari)
{
browserName = "Safari";
}else
{
browserName = "Others";
}
return browserName;
}
</script>

简易方法判断浏览器的类型和版本

7)JavaScript调用客户端的可执行文件

<script type="text/javascript">
<!--打开记事本程序-->
function openNotepad()
{
 var wsh=new ActiveXObject("wscript.shell")
 wsh.run("notepad.exe")//如果在“运行”可以运行就可以在此直接写,否则要写上绝对路径
}
<!--打开计算器程序-->
function openCalc()
{
 var wsh=new ActiveXObject("wscript.shell");
 wsh.run("calc.exe");
}
<!--打开指定位置文件-->
function openFile(file)
{
 var wsh=new ActiveXObject("wscript.shell");
 wsh.run(file);
}
</script>
<input type="button" id="notepad" value="Notepad" onclick="openNotepad();" />
<input type="button" id="calc" value="calc"  onclick="openCalc();" />
<input type="button" id="file" value="file"  onclick="openFile('c://test.txt');" />

8)js页面跳转及刷新(本页面、父页面、最外层页面)

下面为大家分享下不同页面之家的跳转问题,有需要的朋友可以参考下。

"window.location.href"、"location.href"是本页面跳转

"parent.location.href"是上一层页面跳转

"top.location.href"是最外层的页面跳转

举例说明:A,B,C,D都是jsp,D是C的iframe,C是B的iframe,B是A的iframe,如果D中js这样写

"window.location.href"、"location.href":D页面跳转

"parent.location.href":C页面跳转

"top.location.href":A页面跳转

注意:如果D页面中有form的话,则

<form>: form提交后D页面跳转

<form target="_blank">: form提交后弹出新页面

<form target="_parent">: form提交后C页面跳转

<form target="_top"> : form提交后A页面跳转

关于页面刷新,D页面中这样写:

"location.reload();": 本页面刷新

"parent.location.reload();": C页面刷新(当然也可用子窗口的opener对象来获得父窗口的对象:window.opener.document.location.reload();)

"top.location.reload();": A页面刷新

<script type="text/javascript">
// 解决session过期后跳到login页面却跳不出html frameset框架的问题
if (window != top)
{
top.location.href = location.href;
}
</script>

未完待续,慢慢补充...

javascript有用小功能总结(未完待续)的更多相关文章

  1. Javascript之换肤(未完待续)

    这个项目我还没有完全写出来,先记录至此.感觉是方法不对,背景图片的切换方法有Problem.如若有一大神发现了我的文章,还望指导,吾将感激不尽.日后代码还会再钻研再改改. <head> & ...

  2. linux 维护常见场景小命令 (未完待续)

    1.安装KDE桌面 [root@rhel06 ~]# yum -y groupinstall "X Windows System" "KDE Desktop" ...

  3. 关于DOM的一些总结(未完待续......)

    DOM 实例1:购物车实例(数量,小计和总计的变化) 这里主要是如何获取页面元素的节点: document.getElementById("...") cocument.query ...

  4. 一篇文章让Oracle程序猿学会MySql【未完待续】

    一篇文章让Oracle DB学会MySql[未完待续] 随笔前言: 本篇文章是针对已经能够熟练使用Oracle数据库的DB所写的快速学会MySql,为什么敢这么说,是因为本人认为Oracle在功能性方 ...

  5. 省钱版----查找 IoT 设备TTL线序__未完待续

    作者:仙果 原文来自:省钱版—-查找 IoT 设备TTL线序 省钱版----查找 IoT 设备TTL线序__未完待续 缘由 在IoT固件调试分析的过程中,建议首先在IoT设备的板子上焊接调试线,这是能 ...

  6. Go web编程学习笔记——未完待续

    1. 1).GOPATH设置 先设置自己的GOPATH,可以在本机中运行$PATH进行查看: userdeMacBook-Pro:~ user$ $GOPATH -bash: /Users/user/ ...

  7. Reading | 《数字图像处理原理与实践(MATLAB版)》(未完待续)

    目录 一.前言 1.MATLAB or C++ 2.图像文件 文件头 调色板 像素数据 3.RGB颜色空间 原理 坐标表示 4.MATLAB中的图像文件 图像类型 image()函数 imshow() ...

  8. 构建Linux根文件系统(未完待续)

          所谓制作根文件系统, 就是创建各种目录, 并且在里面创建各种文件. 比如在/bin ./sbin 目录下存放各种可执行程序, 在/etc 目录下存放配置文件, 在/lib 目录下存放库文件 ...

  9. MVC丶 (未完待续······)

         希望你看了此小随 可以实现自己的MVC框架     也祝所有的程序员身体健康一切安好                                                     ...

随机推荐

  1. mapreduce中一个map多个输入路径

    package duogemap; import java.io.IOException; import java.util.ArrayList; import java.util.List; imp ...

  2. JS核心系列:浅谈原型对象和原型链

    在Javascript中,万物皆对象,但对象也有区别,大致可以分为两类,即:普通对象(Object)和函数对象(Function). 一般而言,通过new Function产生的对象是函数对象,其他对 ...

  3. ZIP压缩算法详细分析及解压实例解释

    最近自己实现了一个ZIP压缩数据的解压程序,觉得有必要把ZIP压缩格式进行一下详细总结,数据压缩是一门通信原理和计算机科学都会涉及到的学科,在通信原理中,一般称为信源编码,在计算机科学里,一般称为数据 ...

  4. 利用on和off方法编写高效的js代码

    先说下将这个话题的起因:最近发现公司的功能代码,很多在dom对象删除以后,其声明的绑定在window上的resize事件还一直存在,导致相同的功能代码执行了几次.对于我这种轻微代码洁癖的人来说,简直是 ...

  5. 9、委托、事件、Lambda

    开始 关于委托,肯定是要有问题的. 第一个问题,委托用来干什么? 看.net中的表述:在.net平台下,委托类型用来定义和相应应用程序中的回调.(回调?处理内存中两个实体双向通信的一种技术.)   第 ...

  6. H5项目开发分享——用Canvas合成文字

    以前曾用Canvas合成.裁剪.图片等<用H5中的Canvas等技术制作海报>.这次用Canvas来画文字. 下图中"老王考到驾照后"这几个字是画在Canvas上的,与 ...

  7. .NET 基础 一步步 一幕幕[面向对象之对象和类]

    对象和类 本篇正式进入面向对象的知识点简述: 何为对象,佛曰:一花一世界,一木一浮生,一草一天堂,一叶一如来,一砂一极乐,一方一净土,一笑一尘缘,一念一清静.可见"万物皆对象". ...

  8. springmvc SSM shiro redis 后台框架 多数据源 代码生成器

    A集成代码生成器 [正反双向(单表.主表.明细表.树形表,开发利器)+快速构建表单 下载地址    ; freemaker模版技术 ,0个代码不用写,生成完整的一个模块,带页面.建表sql脚本,处理类 ...

  9. 原生JS实现-星级评分系统

    今天我又写了个很酷的实例:星级评分系统(可自定义星星个数.显示信息) sufuStar.star();使用默认值5个星星,默认信息 var msg = [........]; sufuStar.sta ...

  10. windows 7(32/64位)GHO安装指南(U盘制作篇)~

    本篇接着上篇的介绍,为同学讲解U盘启动盘的制作.虽然本篇大白菜的官网上也有类似的教程,但是为了完整性,我将在这里为大家细细的讲解.在这里说一下,系统包和软件包的下载大家可以自行下载,很简单的,小主就不 ...