JavaScript组件焦点与页内锚点间传值的方法


Posted in Javascript onFebruary 02, 2015

本文实例讲述了JavaScript组件焦点与页内锚点间传值的方法。分享给大家供大家参考。具体分析如下:

上述的这两个小功能在一些新式的手机页面是很有用的。

如何光标放上输入框就触发事件,离开输入框就触发另一个事件呢?即使用户不输入任何东西……

页间传值很简单,但在页内的锚点之间是如何传值呢?

一、基本目标

有一个页面,上面有一个输入框,一个超级链接,这两个东西是没有任何关联的,

只是因为功能不大,所以把两个功能合起来写

1、输入框功能

一旦把光标放上对话框背景就变成红色,一旦用户的鼠标点击其他地方则重新变为灰色的背景

JavaScript组件焦点与页内锚点间传值的方法

2、超级链接功能

向页面下方的bottom锚点通过get方法传递值text=1的值,bottom锚点下面有个已被禁用的输入框,不停在轮询地址栏上面的text参数

开始如果不点击,则没有text参数,所以输入框一直显示为null

一旦点击超级链接,下面的对话框在0.5秒之后,变为1,由于是毫秒级处理,所以用户的感觉是实时处理的,

JavaScript组件焦点与页内锚点间传值的方法

这个被disabled的上方还有一个back超级链接,清空页面的参数传递,再次把滚动条拉下来则又是显示为null。

请注意页内锚点间成功传值时,浏览器的url:

JavaScript组件焦点与页内锚点间传值的方法

二、制作过程

不用引入任何插件,直接开个html页面来写就可以了,请看下面的代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  

<html xmlns="http://www.w3.org/1999/xhtml">  

<head>  

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  

<title>onfoucs</title>  

</head>  

  

<body>  

<!--定义个输入框,onfocus是获得焦点,一旦把光标放上输入框则马上触发getFocus()参数。onblur则是失去焦点,也onfocus刚好反过来。-->  

<p>  

<input type="text" onfocus="getFocus()"  onblur="loseFocus()"/>  

</p>  

  

<!--注意页内锚点传递参数的超级链接的语法,写用?接参数,再用#接锚点,多个参数则写成?texta=1&textb=2#bottom,用&链接-->  

<p>  

<a href="onfocus.html?text=1#bottom">锚点</a>  

</p>  

  

<!--这么多的li只是用来占行的~为了让大家看到锚点效果-->  

<li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li>  

  

<!--此超级链接相当于后退按钮-->  

<p>  

<a id="bottom" href="javascript:history.go(-1);">back</a>  

</p>  

  

<!--我就是那个被禁用的对话框-->  

<p>  

<input type="text" id="pollingtext" disabled="disabled"/>  

</p>  

  

</body>  

</html>  

<script>  

    /*一开始先把页面的背景颜色换成#eeeeee*/  

    window.onload=function(){  

        document.bgColor="#eeeeee";  

        Polling();  

        }  

      

    /*当对话框获得焦点就把背景颜色改成红色,反之则重新改成#eeeeee*/     

    function getFocus(){  

        document.bgColor="#ff0000";  

    }  

      

    function loseFocus(){  

        document.bgColor="#eeeeee";  

    }  

      

    /*这是取url get传值时的参数的专用正则表达式*/  

    function getUrlParam(name) {  

        var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");   

        var r = window.location.search.substr(1).match(reg);    

        if (r!=null) return unescape(r[2]); return null;   

    }  

      

    /*不停地轮询,检查是否有get参数传递过来了*/  

    function synchronous() {  

        document.getElementById("pollingtext").value =getUrlParam("text");  

    }  

      

    function Polling(){  

        synchronous();  

        setInterval("synchronous()", 500);  

    }  

</script>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
ExtJs3.0中Store添加 baseParams 的Bug
Mar 10 Javascript
探索Emberjs制作一个简单的Todo应用
Nov 07 Javascript
JavaScript实现列出数组中最长的连续数
Dec 29 Javascript
js中利用tagname和id获取元素的方法
Jan 03 Javascript
Jquery技巧(必须掌握)
Mar 16 Javascript
js的各种排序算法实现(总结)
Jul 23 Javascript
jQuery.uploadify文件上传组件实例讲解
Sep 23 Javascript
Bootstrap Search Suggest使用例子
Dec 21 Javascript
js实现贪吃蛇小游戏(容易理解)
Jan 22 Javascript
Vue2.0实现购物车功能
Jun 05 Javascript
vue 请求后台数据的实例代码
Jun 22 Javascript
js模拟实现烟花特效
Mar 10 Javascript
JavaScript分秒倒计时器实现方法
Feb 02 #Javascript
JavaScript使用setInterval()函数实现简单轮询操作的方法
Feb 02 #Javascript
同一个网页中实现多个JavaScript特效的方法
Feb 02 #Javascript
JavaScript实现同步于本地时间的动态时间显示方法
Feb 02 #Javascript
JavaScript实现更改网页背景与字体颜色的方法
Feb 02 #Javascript
Javascript实现多彩雪花从天降散落效果的方法
Feb 02 #Javascript
jQuery及JS实现循环中暂停的方法
Feb 02 #Javascript
You might like
使用PHP实现下载CSS文件中的图片
2015/12/06 PHP
PHP实现的简单AES加密解密算法实例
2017/05/29 PHP
php设计模式之代理模式分析【星际争霸游戏案例】
2020/03/23 PHP
在IE,Firefox,Safari,Chrome,Opera浏览器上调试javascript
2008/12/02 Javascript
js focus不起作用的解决方法(主要是因为dom元素是否加载完成)
2010/11/05 Javascript
关于JavaScript对象的动态选择及遍历对象
2014/03/10 Javascript
ionic2自定义cordova插件开发以及使用(Android)
2017/06/19 Javascript
原生JS实现Ajax跨域请求flask响应内容
2017/10/24 Javascript
vue项目中使用ueditor的实例讲解
2018/03/05 Javascript
vue iview组件表格 render函数的使用方法详解
2018/03/15 Javascript
微信小程序下拉框功能的实例代码
2018/11/06 Javascript
vue使用Proxy实现双向绑定的方法示例
2019/03/20 Javascript
Ajax请求时无法重定向的问题解决代码详解
2019/06/21 Javascript
[38:31]完美世界DOTA2联赛PWL S3 Magma vs GXR 第一场 12.13
2020/12/17 DOTA
Python抓取Discuz!用户名脚本代码
2013/12/30 Python
简单的Python2.7编程初学经验总结
2015/04/01 Python
在Python中使用mongoengine操作MongoDB教程
2015/04/24 Python
Python实现的Excel文件读写类
2015/07/30 Python
Python网络编程中urllib2模块的用法总结
2016/07/12 Python
Python常见的pandas用法demo示例
2019/03/16 Python
Python后台开发Django会话控制的实现
2019/04/15 Python
python中怎么表示空值
2020/06/19 Python
Django用内置方法实现简单搜索功能的方法
2020/12/18 Python
匡威帆布鞋美国官网:Converse美国
2016/08/22 全球购物
爱尔兰电脑、家电和家具购物网站:Buy It Direct
2019/07/09 全球购物
财务工作者先进事迹材料
2014/01/17 职场文书
中药专业毕业自荐书范文
2014/02/08 职场文书
抄作业检讨书
2014/02/17 职场文书
代办委托书怎么写
2014/08/01 职场文书
妈妈活动方案
2014/08/15 职场文书
乡镇党委书记第三阶段个人整改措施
2014/09/16 职场文书
离婚协议书范文2014(夫妻感情破裂)
2014/12/14 职场文书
奖金申请报告模板
2015/05/15 职场文书
小学教师教育随笔
2015/08/14 职场文书
2016年员工年度考核评语
2015/12/02 职场文书
Python图片处理之图片裁剪教程
2021/05/27 Python