• 2、JavaScript常用互动方法


    一、输出内容(document.write)

    document.write() 可用于直接向 HTML 输出流写内容。简单的说就是直接在网页中输出内容。

    第一种:输出内容用“”括起,直接输出""号内的内容。

    <script type="text/javascript">
      document.write("I love JavaScript!"); //内容用""括起来,""里的内容直接输出。
    </script>

    第二种:通过变量,输出内容

    <script type="text/javascript">
      var mystr="hello world!";
      document.write(mystr);  //直接写变量名,输出变量存储的内容。
    </script>

    第三种:输出多项内容,内容之间用+号连接。

    <script type="text/javascript">
      var mystr="hello";
      document.write(mystr+"I love JavaScript"); //多项内容之间用+号连接
    </script>

    第四种:输出HTML标签,并起作用,标签使用“”括起来。

    <script type="text/javascript">
      var mystr="hello";
    document.write(mystr+"<br>");//输出hello后,输出一个换行符
      document.write("JavaScript");
    </script>

    注:JS中输出空格问题:

    在写JS代码的时候,大家可以会发现这样现象:

    document.write("   1      2                3  ");
    结果: 1 2 3

    无论在输出的内容中什么位置有多少个空格,显示的结果好像只有一个空格。

    这是因为浏览器显示机制,对手动敲入的空格,将连续多个空格显示成1个空格。

    解决方法:

    1. 使用输出html标签&nbsp;来解决

    document.write("&nbsp;&nbsp;"+"1"+"&nbsp;&nbsp;&nbsp;&nbsp;"+"23");
    结果:  1    23

    2. 使用CSS样式来解决

    document.write("<span style='white-space:pre;'>"+"  1        2    3    "+"</span>");
    结果: 1       2     3    

     在输出时添加“white-space:pre;”样式属性。这个样式表示"空白会被浏览器保留"

    示例代码:

    <!DOCTYPE HTML>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>document.write</title>
      <script type="text/javascript">
        var mystr="我是";
        var mychar="JavaScript";
        document.write(mychar+"<br>");//使用document.write输出mychar变量的内容,同时输出一个换行符。
        document.write(mystr+mychar+"的忠实粉丝!");//使用document.write一条语句,通过变量mystr,mychar,"的忠实粉丝!",输出完整的一句"我是JavaScript的忠实粉丝!"。
    
      </script>
    </head>
    <body>
    </body>
    </html>

    二、警告(alert 消息对话框)

    我们在访问网站的时候,有时会突然弹出一个小窗口,上面写着一段提示信息文字。如果你不点击“确定”,就不能对网页做任何操作,这个小窗口就是使用alert实现的。

    语法:

    alert(字符串或变量);  

    看下面的代码:

    <script type="text/javascript">
       var mynum = 30;
       alert("hello!");
       alert(mynum);
    </script>

    注:alert弹出消息对话框(包含一个确定按钮)。

    结果:按顺序弹出消息框

     

    注意:

    1. 在点击对话框"确定"按钮前,不能进行任何其它操作。

    2. 消息对话框通常可以用于调试程序。

    3. alert输出内容,可以是字符串或变量,与document.write 相似。

    三、确认(confirm 消息对话框)

    confirm 消息对话框通常用于允许用户做选择的动作,如:“你对吗?”等。弹出对话框(包括一个确定按钮和一个取消按钮)。

    语法:

    confirm(str);

    参数说明:

    str:在消息对话框中要显示的文本
    返回值: Boolean值

    返回值:

    当用户点击"确定"按钮时,返回true
    当用户点击"取消"按钮时,返回false

    注: 通过返回值可以判断用户点击了什么按钮

    看下面的代码:

    <script type="text/javascript">
        var mymessage=confirm("你喜欢JavaScript吗?");
        if(mymessage==true)
        {   document.write("很好,加油!");   }
        else
        {  document.write("JS功能强大,要学习噢!");   }
    </script>

    结果:

    注: 消息对话框是排它的,即用户在点击对话框按钮前,不能进行任何其它操作。

    四、提问(prompt 消息对话框)

    prompt弹出消息对话框,通常用于询问一些需要与用户交互的信息。弹出消息对话框(包含一个确定按钮、取消按钮与一个文本输入框)。

    语法:

    prompt(str1, str2);

    参数说明:

    str1: 要显示在消息对话框中的文本,不可修改
    str2:文本框中的内容,可以修改

    返回值:

    1. 点击确定按钮,文本框中的内容将作为函数返回值
    2. 点击取消按钮,将返回null

    看看下面代码:

    var myname=prompt("请输入你的姓名:");
    if(myname!=null)
      {   alert("你好"+myname); }
    else
      {  alert("你好 my friend.");  }

    结果:

    注:在用户点击对话框的按钮前,不能进行任何其它操作

    示例代码:使用prompt()消息框,输入你的成绩,根据输入的成绩做出评价。

     1 <!DOCTYPE HTML>
     2 <html>
     3 <head>
     4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
     5 <title>prompt</title>
     6   <script type="text/javascript">
     7   function rec(){
     8     var score; //score变量,用来存储用户输入的成绩值。
     9     score = prompt("请输入成绩");               ;
    10     if(score>=90)
    11     {
    12        document.write("你很棒!");
    13     }
    14     else if(score>=75)
    15     {
    16        document.write("不错吆!");
    17     }
    18     else if(score>=60)
    19     {
    20        document.write("要加油!");
    21     }
    22     else
    23     {
    24        document.write("要努力了!");
    25     }
    26   }
    27   </script>
    28 </head>
    29 <body>
    30     <input name="button" type="button" onClick="rec()" value="点击我,对成绩做评价!" />
    31 </body>
    32 </html>

    五、打开新窗口(window.open)

    open() 方法可以查找一个已经存在或者新建的浏览器窗口。

    语法:

    window.open([URL], [窗口名称], [参数字符串])

    参数说明:

    URL:可选参数,在窗口中要显示网页的网址或路径。如果省略这个参数,或者它的值是空字符串,那么窗口就不显示任何文档。
    窗口名称:可选参数,被打开窗口的名称。
        1.该名称由字母、数字和下划线字符组成。
        2."_top"、"_blank"、"_selft"具有特殊意义的名称。
           _blank:在新窗口显示目标网页
           _self:在当前窗口显示目标网页
           _top:框架网页中在上部窗口中显示目标网页
        3.相同 name 的窗口只能创建一个,要想创建多个窗口则 name 不能相同。
        4.name 不能包含有空格。
    参数字符串:可选参数,设置窗口参数,各参数用逗号隔开。

    参数表:

    例如:打开http://www.imooc.com网站,大小为300px * 200px,无菜单,无工具栏,无状态栏,有滚动条窗口:

    <script type="text/javascript"> window.open('http://www.imooc.com','_blank','width=300,height=200,menubar=no,toolbar=no, status=no,scrollbars=yes')
    </script>

    注意:运行结果考虑浏览器兼容问题。

    六、关闭窗口(window.close)

    close()关闭窗口

    用法:

    window.close();   //关闭本窗口

    <窗口对象>.close();   //关闭指定的窗口

    例如:关闭新建的窗口。

    <script type="text/javascript">
       var mywin=window.open('http://www.imooc.com'); //将新打的窗口对象,存储在变量mywin中
       mywin.close();
    </script>

    注意:上面代码在打开新窗口的同时,关闭该窗口,看不到被打开的窗口。

    练习:

     1 <!DOCTYPE html>
     2 <html>
     3  <head>
     4   <title> new document </title>  
     5   <meta http-equiv="Content-Type" content="text/html; charset=gbk"/>   
     6   <script type="text/javascript">  
     7     function openWindow(){
     8     // 新窗口打开时弹出确认框,是否打开
     9    var message=prompt("请输入你要打开的网站网址","http://www.imooc.com/")
    10     // 通过输入对话框,确定打开的网址,默认为 http://www.imooc.com/
    11     if(message!=null){
    12         window.open(message,'_blank','width=400,height=500,menubar=no,toobar=no')
    13     }else{
    14         document.write("啊,朋友再见!");
    15     }
    16 
    17     //打开的窗口要求,宽400像素,高500像素,无菜单栏、无工具栏。
    18    
    19     }
    20     
    21   </script> 
    22  </head> 
    23  <body> 
    24       <input type="button" value="新窗口打开网站" onclick="openWindow()" /> 
    25  </body>
    26 </html>
  • 相关阅读:

    二分查找法
    LeetCode-Two Sum III
    LeetCode-Add and Search Word
    LeetCode-Longest Substring with At Least K Repeating Characters
    LeetCode-Rearrange String k Distance Apart
    LeetCode-Game of Life
    LeetCode-Walls and Gates
    LeetCode-Water and Jug Problem
    LeetCode-Inorder Successor in BST
  • 原文地址:https://www.cnblogs.com/cys168/p/9007858.html
Copyright © 2020-2023  润新知