2017_7_12 JSP 续

不同类型的循环:

for - 循环代码块一定的次数
for/in - 循环遍历对象的属性
while - 当指定的条件为 true 时循环指定的代码块
do/while - 同样当指定的条件为 true 时循环指定的代码块;

for循环实例:

for (var i=0; i<5; i++)
  {
  x=x + "The number is " + i + "<br>";
  }

<!DOCTYPE html>
<html>
<body>

<p>点击下面的按钮,将代码块循环五次:</p>
<button onclick="myFunction()">点击这里</button>
<p id="demo"></p>

<script>
function myFunction()
{
var x="";
for (var i=0;i<5;i++)
  {
  x=x + "The number is " + i + "<br>";
  }
document.getElementById("demo").innerHTML=x;
}
</script>

</body>
</html>

这里写图片描述

For/In 循环:

for/in 语句循环遍历对象的属性:
实例:
<!DOCTYPE html>
<html>
<body>
<p>点击下面的按钮,循环遍历对象 "person" 的属性。</p>
<button onclick="myFunction()">点击这里</button>
<p id="demo"></p>

<script>
function myFunction()
{
var x;
var txt="";
var person={fname:"Bill",lname:"Gates",age:56}; 

for (x in person)
{
txt=txt + person[x];
}

document.getElementById("demo").innerHTML=txt;
}
</script>
</body>
</html>

效果图:
这里写图片描述

while 循环:

实例:
<html>
<body>

<p>点击下面的按钮,只要 i 小于 5 就一直循环代码块。</p>
<button onclick="myFunction()">点击这里</button>
<p id="demo"></p>

<script>
function myFunction()
{
var x="",i=0;
while (i<5)
  {
  x=x + "The number is " + i + "<br>";
  i++;
  }
document.getElementById("demo").innerHTML=x;
}
</script>

</body>
</html>

效果图:
这里写图片描述

do/while 循环:

do/while 循环是 while 循环的变体。该循环会执行一次代码块,在检查条件是否为真之前,然后如果条件为真的话,就会重复这个循环。
实例:
<html>
<body>

<p>点击下面的按钮,只要 i 小于 5 就一直循环代码块。</p>
<button onclick="myFunction()">点击这里</button>
<p id="demo"></p>

<script>
function myFunction()
{
var x="",i=0;
do
  {
  x=x + "The number is " + i + "<br>";
  i++;
  }
while (i<5)  
document.getElementById("demo").innerHTML=x;
}
</script>

</body>
</html>

效果图:
这里写图片描述

break跳出循环:

break 语句跳出循环后,会继续执行该循环之后的代码

continue 用于跳过循环中的一个迭代:

<html>
<body>

<p>点击下面的按钮来执行循环,该循环会跳过 i=3 的步进。</p>
<button onclick="myFunction()">点击这里</button>
<p id="demo"></p>

<script>
function myFunction()
{
var x="",i=0;
for (i=0;i<10;i++)
  {
  if (i==3)
    {
    continue;
    }
  x=x + "The number is " + i + "<br>";
  }
document.getElementById("demo").innerHTML=x;
}
</script>

</body>
</html>

效果图:
这里写图片描述

注:continue 语句(带有或不带标签引用)只能用在循环中。
break 语句(不带标签引用),只能用在循环或 switch 中。
通过标签引用,break 语句可用于跳出任何 JavaScript 代码块;

try 语句测试代码块的错误。

try 语句允许我们定义在执行时进行错误测试的代码块。

catch 语句处理错误。

catch 语句允许我们定义当 try 代码块发生错误时,所执行的代码块
JavaScript 语句 try 和 catch 是成对出现的。
实例:

<html>
<head>
<script>
var txt="";
function message()
{
try
  {
  adddlert("Welcome guest!");
  }
catch(err)
  {
  txt="本页有一个错误。\n\n";
  txt+="错误描述:" + err.message + "\n\n";
  txt+="点击确定继续。\n\n";
  alert(txt);
  }
}
</script>
</head>

<body>
<input type="button" value="查看消息" onclick="message()" />
</body>

</html>

效果图:
这里写图片描述

throw 语句创建自定义错误

throw 语句允许我们创建自定义错误。
如果把 throw 与 try 和 catch 一起使用,那么您能够控制程序流,并生成自定义的错误消息。
实例:

<html>
<body>

<script>
function myFunction()
{
try
{ 
var x=document.getElementById("demo").value;
if(x=="")    throw "值为空";
if(isNaN(x)) throw "不是数字";
if(x>10)     throw "太大";
if(x<5)      throw "太小";
}
catch(err)
{
var y=document.getElementById("mess");
y.innerHTML="错误:" + err + "。";
}
}
</script>

<h1>我的第一个 JavaScript 程序</h1>
<p>请输入 5 到 10 之间的数字:</p>
<input id="demo" type="text">
<button type="button" onclick="myFunction()">测试输入值</button>
<p id="mess"></p>

</body>
</html>

效果图:
这里写图片描述

查找 HTML 元素:

通常,通过 JavaScript,您需要操作 HTML 元素。

为了做到这件事情,您必须首先找到该元素。有三种方法来做这件事:

  • 通过 id 找到 HTML 元素
  • <html>
    <body>
    
    <p id="intro">你好?</p>
    <p>本例演示 <b>getElementById</b> 方法!</p>
    
    <script>
    x=document.getElementById("intro");
    document.write('<p>id="intro" 的段落中的文本是:' + x.innerHTML + '</p>');
    </script>
    
    </body>
    </html>
    

    效果图:
    这里写图片描述

  • 通过标签名找到 HTML 元素
  • <html>
    <body>
    
    <p>Hello World!</p>
    
    <div id="main">
    <p>The DOM is very useful.</p>
    <p>本例演示 <b>getElementsByTagName</b> 方法。</p>
    </div>
    
    <script>
    var x=document.getElementById("main");
    var y=x.getElementsByTagName("p");
    document.write('id 为 "main" 的 div 中的第一段文本是:' + y[0].innerHTML);
    </script>
    
    </body>
    </html>

    效果图:
    这里写图片描述

  • 通过类名找到 HTML 元素
    提示:通过类名查找 HTML 元素在 IE 5,6,7,8 中无效。


  • HTML DOM 允许 JavaScript 改变 HTML 元素的内容。
  • 在 JavaScript 中,document.write() 可用于直接向 HTML 输出流写内容。
    注:绝不要使用在文档加载之后使用 document.write()。这会覆盖该文档
  • <html>
    <body>
    
    <script>
    document.write(Date());
    </script>
    
    </body>
    </html>
    

    效果图:
    这里写图片描述

    改变 HTML 内容

  • 修改 HTML 内容的最简单的方法时使用 innerHTML 属性。
    实例:
  • <html>
    <body>
    
    <p id="p1">Hello World!</p>
    
    <script>
    
    alert(ert);
    document.getElementById("p1").innerHTML="New text!";
    </script>
    
    <p>上面的段落被一条 JavaScript 脚本修改了。</p>
    
    </body>
    </html>

    效果:
    这里写图片描述

  • 如需改变 HTML 元素的内容,请使用这个语法:
  • document.getElementById(id).innerHTML=new HTML

    上面的 HTML 文档含有 id=”header” 的 h1 元素 我们使用 HTML DOM 来获得 id=”header” 的元素 JavaScript 更改此元素的内容 (innerHTML)

    改变 HTML 属性:

  • 如需改变 HTML 元素的属性,请使用这个语法:
  • document.getElementById(id).attribute=new value

    实例:

    <html>
    <body>
    
    <img id="image" src="/i/eg_tulip.jpg" />
    
    <script>
    document.getElementById("image").src="/i/shanghai_lupu_bridge.jpg";
    </script>
    
    <p>原始图片是郁金香(eg_tulip.jpg),但是已被修改为卢浦大桥(shanghai_lupu_bridge.jpg)。</p>
    
    </body>
    </html>

    效果图:
    这里写图片描述


    HTML DOM 使 JavaScript 有能力对 HTML 事件做出反应。

    我们可以在事件发生时执行 JavaScript,比如当用户在 HTML 元素上点击时。 如需在用户点击某个元素时执行代码,请向一个 HTML 事件属性添加 JavaScript 代码: 实例:

    function test(){
                if(navigator.cookieEnabled==true){
                    alert("已启用");
                    document.write("欢迎来到**网页");
                }else{
                    alert("未启用");
                }
            }
            function testOnlaod(){
                alert("来到**页面");
    
            }
            function testUnOnlaod(){
                alert("来过了!");
            }
            function testB(){
                var test = document.getElementById("test");
                test.value = test.value.toUpperCase();
            }
            function mOver(obj){
                obj.style.backgroundColor="blue";
                obj.innerHTML="欢迎光临"
            }
            function mOut(obj){
    
                obj.innerHTML="来,看看!"
                obj.style.backgroundColor="yellow";
            }
            function Ouse(onc){
                onc.style.backgroundColor="yellow";
                onc.innerHTML="放你妈的屁"
            }
            function Ousp(onc){
                onc.style.backgroundColor="red";
                onc.innerHTML="彷徨"
            }

    效果图:未点击前
    未点击前的图片
    点击后的状态:
    点击后的状态


    添加和删除节点(HTML 元素)。

    创建新的 HTML 元素:

  • 实例:
  • <html>
    <body>
    
    <div id="div1">
    <p id="p1">这是一个段落。</p>
    <p id="p2">这是另一个段落。</p>
    </div>
    
    <script>
    var para=document.createElement("p");
    var node=document.createTextNode("这是新段落。");
    para.appendChild(node);
    
    var element=document.getElementById("div1");
    element.appendChild(para);
    </script>
    
    </body>
    </html>

    效果图:
    这里写图片描述

  • 这段代码创建新的 p 元素:
  • var para=document.createElement("p");

  • 如需向 p 元素添加文本,您必须首先创建文本节点。这段代码创建了一个文本节点:
    var node=document.createTextNode("这是新段落。");
  • 然后您必须向 p 元素追加这个文本节点:
    para.appendChild(node);
    最后您必须向一个已有的元素追加这个新元素。
    这段代码找到一个已有的元素:
    var element=document.getElementById("div1");
  • 这段代码向这个已有的元素追加新元素:
    element.appendChild(para);
  • 删除已有的 HTML 元素

  • 如需删除 HTML 元素,您必须首先获得该元素的父元素:
    实例:
  • <html>
    <body>
    
    <div id="div1">
    <p id="p1">这是一个段落。</p>
    <p id="p2">这是另一个段落。</p>
    </div>
    
    <script>
    var parent=document.getElementById("div1");
    var child=document.getElementById("p1");
    parent.removeChild(child);
    </script>
    
    </body>
    </html>
    

    效果图:
    这里写图片描述
    这个 HTML 文档含有拥有两个子节点(两个 p 元素)的 div 元素:

    <div id="div1">
    <p id="p1">这是一个段落。</p>
    <p id="p2">这是另一个段落。</p>
    </div>

    找到 id=”div1” 的元素:
    var parent=document.getElementById("div1");
    找到 id=”p1” 的

    元素:
    var child=document.getElementById("p1");
    从父元素中删除子元素:
    parent.removeChild(child);
    提示:如果能够在不引用父元素的情况下删除某个元素,就太好了。
    不过很遗憾。DOM 需要清楚您需要删除的元素,以及它的父元素。
    这是常用的解决方案:找到您希望删除的子元素,然后使用其 parentNode 属性来找到父元素:

    var child=document.getElementById("p1");
    child.parentNode.removeChild(child);

    evaal();

    eval()函数是把里面的参数转化成代码;

    实例:

    function testB(){
                var test = "var a='注意单引号';";
                //eval()函数是把里面的参数转化成代码;
                eval(test);
                alert("s");
                alert(a);
    
                test="alert('指定时间触发');";
                eval(test); 
            }

    escape();

    escape()函数把参数进行转码;
    unescape():把转码的参数转会成字符!

    function testC(){
                var a="美女";
                alert(a);
                //escape()函数把参数进行转码;
                alert(escape(a));
    
                alert(unescape(a));
            }

    这里写图片描述这里写图片描述这里写图片描述

    submit

    function testE(){
                var flag = true;
                var test = document.getElementById("test");
                var name = document.getElementById("name").value;
                var pwd = document.getElementById("pwd").value;
                if(name == ""){
                    alert("昵称不能为空");
                    flag = false;   
                }if(pwd == ""){
                    alert("密码不能为空");
                    flag = false;
                }
                if(flag == true){
                    alert("ss");
                    test.submit();
    
                }
            } 

    通过submit把当前页面的登陆提交到百度网页!

    <form action="http://www.baidu.com" method="get" id="test" >
            用户:
            <input  type="text" id="name" />
            <br/>
            密码:<input type="text" id="pwd" />
            <br>
            <input type="button" value="ssss" onclick="testE()" />
       </form>
    <style>
            div>p{
                background-color: red;
            }
        </style>
        <script src="jQuery/jquery-1.7.1.min.js"></script>
        <script type="text/javascript">
        function test(){
            $.post("p").hide();    
                }
        function testA(){
            $(".p2").hide();   
                }
        function testB(){
            $("#uo").hide();   
                }
        function testC(){
            $("div p").css("background-color","blue");
        }
        $(document).ready(function(){
            $("#button1").click(function(){
                $("li").each(function(){
                    alert($(this).text())
                });
            });
        });
        $(document).ready(function(){
            $("#bu").click(function(){
                $("p").css("background-color","yellow");
            }); 
        });
        function testD(){
            var div = $("div");
            $.each(div,function(i,div){
                alert("第"+i+"个:"+$(div).text());   
            });
        }
        function testE(){
            $("div,span,p.name").css("background-color","pink");
        }
        $(document).ready(function(){
            $(".button2");
        });
        function testF(){
            $("form~span").css("color","red");
        }
        $(document).ready(function(){
            $("#jd").click(function(){
                $("div").animate({left:'250px'});
            });
        });
        $(document).ready(function(){
            alert("确认删除?");
            $("#jd p").remove();
        });
        </script>
      </head>
    
      <body>
      <button></button>
      <hr>
            <div style="border:1px solid red;width:300px;height: 230px;">
                <h1>今天的学习基本很有用!</h1>
                <p>你好啊?</p>
                <p>你好啊?</p>
                <p>你好啊?</p>
            </div>
        <p class="p2">第一个</p>
        <p class="p2">第二个</p>
        <p id="uo">第三个</p>
                <input type="button" value="ss" onclick="test()" />
                <input type="button" value="aa" onclick="testA()" />
                <input type="button" value="bb" onclick="testB()" />
                <input type="button" value="cc" onclick="testC()" />
                <input type="button" value="dd" onclick="testD()" />
                <button id="bu">点击换掉所有p标签的背景颜色</button>
                <button class="button2">动画效果</button>
                <hr>
                <button id="button1">遍历li标签里面的值并用警告框输出来</button>
            <ul>
                <li>第一名</li>
                <li>第二名</li>
                <li>第三名</li>
            </ul>
            <hr>
            <div id="div1">
                <h1>你是谁?</h1>
                <span>我是你爹!</span>
                <p class="name">我不信</p>
                <p id="name">你右腹下面有两朵云形状的胎记!</p>
            </div>
            <input type="button" value="点击查找div里面的标签并改变其背景颜色" onclick="testE()" />
            <hr/>
            <form action="">
                <span>我是爸爸</span>
                <p>我也是爸爸</p>
                <h1>我还是爸爸</h1>
                <span>
                    <span>你是儿子</span>
                    <p>你也是儿子</p>
                </span>
                <b>我是爸爸</b>
            </form>
            <span>我是你兄弟</span>
            <span>我是哥哥</span>
            <p>我是?</p>
            <input type="button" value="点我辨别"  onclick="testF()" />
            <hr>
            <div id="jd">
    
                <button>简单点</button>
                删除成功
                <p>删除?</p>
            </div>
      </body>

    这里写图片描述
    这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值