JS实例(一)

一:单选按钮,选择同意,提交变为可用,反正提交不可用:

HTML里面代码:

<form id="f1" name="f1">
<input type="radio" value="true" id="ok1" name="ok" onclick="doEnable()"/>
<label for="ok1">同意</label>
<input type="radio" value="false" id="ok2" name="ok" checked="checked" onclick="doEnable()"/><label for="ok2">不同意</label><br/>

<input type="Submit" value="提交" id="btn" name="btn" disabled="disabled"/>
</form>

JS代码:

function doEnable()
{
    var b = document.getElementById("btn");
    var a = document.getElementById("ok1");
    if(a.checked)
    {
        b.removeAttribute("disabled");
    }
    else
    {
        b.setAttribute("disabled","disabled");
    }
}

二:表单操作,列表内数据的添加,删除,修改

效果图如下:

HTML代码:

<form id="f1">
<input type="text" id="t1" name="t1" />
<input type="button" id="b1" name="b1" value="添加" onclick="add()" /> <br /><br />
<select name="s1" id="s1" size="10" style="width:100px; margin-left:30px;" onclick="sel(this)">
        <option>北京</option>
        <option>上海</option>
        <option>广州</option>
        <option>淄博</option>
</select><br />
<input type="button" id="d1" name="d1" value="删除" style=" margin-left:30px;" onclick="del()"/>
<input type="button" id="d2" name="d2" value="清空" onclick="cl()"/> <br /><br />
<input type="text" id="t2" name="t2" />
<input type="button" id="u1" name="u1" value="修改" onclick="up()"/> <br />
</form>

JS代码:

var t1 = document.getElementById("t1");
var t2 = document.getElementById("t2");
function add()
{
    var t = t1.value;  //取出文本框中输入的值
    var obj = document.createElement("option"); //创建一个标签元素
    obj.innerHTML=t;  //将文本框中的值赋到已创建的标签元素内
    document.getElementById("s1").appendChild(obj); //将创建的标签作为一个子元素添加到id为s1的select列表中
    t1.value="";
}

var op;
function sel(rd)
{
    op = rd.options[rd.selectedIndex]; //由传进来的this参数,来找出选中的option的下标,从而找到选中的那个option
    var u = op.innerHTML; //选中的option中的内容放到u中
    t2.value =u; //u的值赋给t2的value

}
function del()
{
    var s = document.getElementById("s1");
    s.removeChild(op);
    var t2=document.getElementById("t2");
    t2.value ="";
}
function cl()
{
    var s = document.getElementById("s1");
    var n = s.options.length; //变量n等于子元素的个数,个数会随着删除变化,所以不能直接放在for里面
    for(var i=0;i<n;i++)
    {
        s.removeChild(s.options[0]); //每次删除了之后第1个元素变为第0个,所以每次循环删0,就可以都删除
    }
    t1.value="";
    t2.value="";
}
function up()
{
    var v = t2.value; //将文本框2中的内容赋给变量v
    op.innerHTML = v; //将v的值赋给选的中option
}

三:两个列表,可以添加数据,并且通过按钮在两个列表之间移动数据

效果图如下:

HTML代码:

<div style="float:left">
<select name="s1" id="s1" size="10" style="width:150px; margin-left:30px;" onclick="rightto(this)">
</select><br />
<input type="text" id="t1" name="t1" style="width:100px; margin-left:30px;" />
<input type="button" id="b1" name="b1" value="添加" onclick="add1()" />
</div>
<div style="float:left">
<input type="button" id="d1" name="d1" value=">>" style=" margin:15px 0px 0px 30px;" onclick="rightall()"/> <br />
<input type="button" id="d2" name="d2" value="->" style=" margin:15px 0px 0px 30px;" onclick="rightone()"/> <br />
<input type="button" id="d3" name="d3" value="<<" style=" margin:15px 0px 0px 30px;" onclick="leftall()"/> <br />
<input type="button" id="d4" name="d4" value="<-" style=" margin:15px 0px 0px 30px;" onclick="leftone()"/> <br />
</div>
<div style="float:left">
<select name="s2" id="s2" size="10" style="width:150px; margin-left:30px;" onclick="leftto(this)">
</select><br />
<input type="text" id="t2" name="t2" style="width:100px; margin-left:30px;" />
<input type="button" id="b2" name="b2" value="添加" onclick="add2()" />
</div>

JS代码:

var t1 = document.getElementById("t1");
var t2 = document.getElementById("t2");
var s1 = document.getElementById("s1");
var s2 = document.getElementById("s2");
var op1;
var op2;
function add1()
{
    var t = t1.value;  //取出文本框中输入的值
    var obj = document.createElement("option"); //创建一个标签元素
    obj.innerHTML=t;  //将文本框中的值赋到已创建的标签元素内
    document.getElementById("s1").appendChild(obj); //将创建的标签作为一个子元素添加到id为s1的select列表中
    t1.value="";
}
function add2()
{
    var t = t2.value;
    var obj = document.createElement("option");
    obj.innerHTML=t;
    document.getElementById("s2").appendChild(obj);
    t2.value="";
}
function rightall()
{
    var n = s1.options.length;
    for(var i=0;i<n;i++)
    {
        s2.appendChild(s1.options[0]);
    }
}
function leftall()
{
    var n = s2.options.length;
    for(var i=0;i<n;i++)
    {
        s1.appendChild(s2.options[0]);
    }
}
function rightto(r1)
{
    op1 = r1.options[r1.selectedIndex];
}
function leftto(r2)
{
    op2 = r2.options[r2.selectedIndex];
}
function rightone()
{
    s2.appendChild(op1);
}
function leftone()
{
    s1.appendChild(op2);
}

四:不算个例子,就是验证了一下checked的返回值,选中某一项的时候返回的值是个true,未选中的返回flase

效果图如下:

HTML代码:

<form>
<input id="in1" type="radio" name="in"  />同意
<input id="in2" type="radio" name="in" checked="true" />不同意
</form>

JS代码:

var a = document.getElementById("in1");
var b = document.getElementById("in2");
alert(a.checked);
alert(b.checked);

五:日期时间的选择

效果图如下:

HTML代码:

<form id="f1" name="f1">
<select name="selYear" id="selYear" onchange="FillDay()"></select>年
<select name="selMonth" id="selMonth" onchange="FillDay()"></select>月
<select name="selDay" id="selDay"></select>日
</form>

JS代码:

var sYear = document.getElementById("selYear");
var sMonth = document.getElementById("selMonth");
var sDay = document.getElementById("selDay");
function FillYear()
{
    //清空
    sYear.innerHTML = "";
    //添加
    var d = new Date();
    var year = d.getFullYear();
    for(var i=year-10;i<=year+10;i++)
    {
        var op = document.createElement("option");
        op.innerHTML = i;
        op.value = i;
        sYear.appendChild(op);
    }
}
function FillMonth()
{
    sMonth.innerHTML = "";
    for(var i=1;i<=12;i++)
    {
        var op = document.createElement("option");
        op.innerHTML = i;
        op.value = i;
        sMonth.appendChild(op);
    }
}
function FillDay()
{
    sDay.innerHTML = "";
    var year = parseInt(sYear.value);
    var month = parseInt(sMonth.value);
    if(month == 1 || month == 3 || month==5 || month==7 || month==8 || month==10 || month == 12)
    {
        buildDayList(31);
    }
    else if(month == 4 || month == 6 || month == 9 || month == 11)
    {
        buildDayList(30);
    }
    else
    {
        if(year%400 == 0 || (year%4==0 && year%100!=0))
        {
            buildDayList(29);
        }
        else
        {
            buildDayList(28);
        }
    }

}
function buildDayList(n) //n是每月的天数
{
    for(var i=1;i<=n;i++)
    {
        var op = document.createElement("option");
        op.innerHTML = i;
        op.value = i;
        sDay.appendChild(op);
    }
}
FillYear();
FillMonth();
FillDay();

六:鼠标移动到背景上,背景向上拉开,显示出下面的图片,这个还没加入动态移除添加事件,有BUG,练习用

效果图如下:

CSS代码:

<style type="text/css">
#bg
{
    background-image:url(images/1.jpg);
    width:300px;
    height:300px;
}
#hd
{
    background-color:#666;
    width:300px;
}
</style>

HTML代码:

<div id="bg" onmouseover="hdup()" onmouseout="hddown()" >
    <div id="hd" style="height:300px;">
    </div>
</div>

JS代码:

var d = document.getElementById("hd");
function hdup()
{
    var h = parseInt(d.style.height);
    if(h>=10)
    {
        h=h-10;
        d.style.height= h+"px";

        setTimeout(function(){hdup();},30);
    }

}

function hddown()
{
    var h = parseInt(d.style.height);
    if(h<=290)
    {
        h=h+10;
        d.style.height= h+"px";

        setTimeout(function(){hddown();},30);
    }
}
时间: 2024-10-07 05:45:32

JS实例(一)的相关文章

js实例_当鼠标移动到某个元素上时在元素下面显示一段提示文字

效果: 当鼠标不在自动登录上时,只显示自动登录这个表单,下面的div提示则隐藏. 当鼠标移动到自动登录这个表单时,则显示下面的div提示,当鼠标移出时再将其隐藏 代码实现与原理: HTML代码: <body> <input type="checkbox" />自动登录 <div id="div1">不要再玩游戏啦!!!</div> </body> CSS代码:给id为div1的元素做一下修饰,并且将其最开始

【js实例】Array类型的9个数组方法,Date类型的41个日期方法,Function类型

前文提要:[js实例]js中的5种基本数据类型和9种操作符 Array类型的9个数组方法 Array中有9个数组方法: 1.检测数组 2.转换方法 3.栈方法 4.队列方法 5.冲排序方法6.操作方法 7.位置方法 8.迭代方法 9.归并方法 在实例中介绍,实例如下 /* Array类型 js数组中的每一项可以用来保存任何类型的数据:js数组的大小是可以动态调整的 */ var colors = ["red", "blue", "green"];

子窗口调用父页面js实例

父页面代码: <%@ page contentType="text/html; charset=GBK"%> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=GBK" /> <title>new_page_title</title> <script type="

tytabs.jquery.min.js实例,渐变的TAB选项卡特效

<!DOCTYPE html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>唐山塑钢门窗</title><script type="text/javascript" src="/ajaxjs/jquery-1.6.2.min.js"><

JavaScript、jQuery、HTML5、Node.js实例大全-读书笔记1

技术非常多.样例非常多,仅仅好慢慢学,慢慢实践.!如今学的这本书是[JavaScript实战----JavaScript.jQuery.HTML5.Node.js实例大全] 第 3 章 用 JavaScript 实现的照片展示 构建软件设计的方法有两种:一种是把软件做得非常easy以至于明显找不到缺陷.还有一种是把它 做得非常复杂以至于找不到明显的缺陷. --C.A.R.Hoare,1980 年图灵奖获得者 在这个自拍自恋的时代,照片是要展示的.在前面的章节里已经解说了事件的绑定.本章主要利用前

[百度地图] 用于类似 DWZ UI 框架的 百度地图 功能封装类 [MultiZMap.js] 实例源码

MultiZMap 功能说明 MultiZMap.js 本类方法功能大多使用 prototype 原型 实现,它是 ZMap 的多加载版本,主要用于类似 DWZ 这个 多标签的 UI 的框架: 包含的功能有:轨迹回放,圈画区域可编辑,判断几个坐标是否在一个圆圈内,生活服务查询,从经纬度获取地址信息,地图工具包括测距,获取面积,以积打印地图,地图全屏,实时路况,坐标是否在polygon区域内,打车方案,经过中间途经点,添加地图控件: 界面查看 : http://www.cnblogs.com/ed

JavaScript、jQuery、HTML5、Node.js实例大全-读书笔记3

技术非常多,样例非常多.仅仅好慢慢学,慢慢实践!!如今学的这本书是[JavaScript实战----JavaScript.jQuery.HTML5.Node.js实例大全] JavaScript.jQuery.HTML5.Node.js实例大全-读书笔记2 3.3 响应鼠标动作 图3-2的效果已经有了,须要鼠标来操作展示想看的照片.这就须要在对应的地方加上事件. 3.3.1 响应小照片单击动作 在3.2.3的代码里提供了显示小图列表的eg.showThumb()方法.在单击小图片时要显示大图片.

JavaScript、jQuery、HTML5、Node.js实例大全-读书笔记2

技术很多,例子很多,只好慢慢学,慢慢实践!!现在学的这本书是[JavaScript实战----JavaScript.jQuery.HTML5.Node.js实例大全] JavaScript.jQuery.HTML5.Node.js实例大全-读书笔记1 3.2 照片加载与定位 根据功能设计,可以先写好 HTML 结构基础,再配好 CSS 做出大致效果,最后用 JavaScript加上各种动作.首先请看 HTML 代码结构. 3.2.1 HTML 代码 CSS代码保存到 eg3.css 文件中,Ja

【js实例】js中的5种基本数据类型和9种操作符

js中的5中基本数据类型 js标识符 第一个字符必须为字母,下划线,或美元符 其他字符可以是字母,下划线,美元符,数字 js标识符区分大小写 标识符不能使关键字和保留字 关键字: break do instanceof typeof case else new var catch finally return void continue for switch while debugger function this with default if throw   delete in try  

Vue.js实例

构造器 每个 Vue.js 应用都是通过构造函数 Vue 创建一个 Vue 的根实例 启动的: var vm = new Vue({ // 选项 })