您的位置:首页 > 编程语言 > Java开发

第 2 章 常用互动方法

2016-01-29 11:06 453 查看
输出内容 document write

JS 中如何输出空格

警告 alert 消息对话框

确认 confirm 消息对话框

提问 prompt 消息对话框

打开新窗口 window open

关闭窗口 window close

编程练习

输出内容( 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 标签
 
来解决


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


2. 使用 CSS 样式来解决

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


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

警告( 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.");  }


结果:



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

打开新窗口( window . open )

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

语法:
window.open(

例如:打开 [url=http://www.baidu.com]http://www.baidu.com" target=_blank>, [窗口名称], [参数字符串])[/code]

参数说明:

URL:可选参数,在窗口中要显示网页的网址或路径。如果省略这个参数,或者它的值是空字符串,那么窗口就不显示任何文档。

窗口名称:可选参数,被打开窗口的名称。

1. 该名称由字母、数字和下划线字符组成。

2. “_top”、”_blank”、”_selft”具有特殊意义的名称。

_blank:在新窗口显示目标网页

_self:在当前窗口显示目标网页

_top:框架网页中在上部窗口中显示目标网页

3. 相同 name 的窗口只能创建一个,要想创建多个窗口则 name 不能相同。

4. name 不能包含有空格。

参数字符串:可选参数,设置窗口参数,各参数用逗号隔开。

参数表:



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

<script type="text/javascript"> window.open('http://www.baidu.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>


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

编程练习

制作新按钮,“新窗口打开网站” ,点击打开新窗口。

<html>
<head>
<title> new document </title>
<meta http-equiv="Content-Type" content="text/html; charset=gbk"/>
<script type="text/javascript">

// 新窗口打开时弹出确认框,是否打开
// 通过输入对话框,确定打开的网址,默认为 http://www.imooc.com/
//打开的窗口要求,宽400像素,高500像素,无菜单栏、无工具栏。

function openWindow(){
if(confirm("确定打开新窗口?")){
var mConfirm = prompt("请输入要打开的网址","http://www.baidu.com/");
if(mConfirm != null){
window.open(mConfirm,'_blank',"width=400,height=500,menubar=no,toolbar=no");
}
}
}

</script>
</head>
<body>
<input type="button" value="新窗口打开网站" onclick="openWindow()" />
</body>
</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息