为了账号安全,请及时绑定邮箱和手机立即绑定

请问如下代码是否符合这次编程练习的要求呢?

http://img1.sycdn.imooc.com//578ce5830001e32007590346.jpg

疑问如下:

①如果要使打开的网址为 Prompt输入框中用户输入的网址,应该怎么改呢?之前试过 把13行中window.open('http://www.imooc.com/','_blank','wide=400px,height=500px,menubar=no,toolbar=no')  }

改为window.open('openWindow','_blank','wide=400px,height=500px,menubar=no,toolbar=no')  },

但是提示错误,openWindow应该是prompt的返回值吧,请问语法在哪里出错呢?

②按图上代码的话,不点击按钮就自动弹出确认对话框了,这步是哪里出错了呢?

③零基础,分不清什么情况下使用函数,有什么好的建议吗?

谢谢!

正在回答

6 回答

我写的这个代码运行没有问题,

<!DOCTYPE html>
<html>
 <head>
  <title>打开窗口</title>  
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>   
  <script type="text/javascript">  
    
    // 新窗口打开时弹出确认框,是否打开
    function openWindow(){
    
     var open=prompt("是否打开新窗口","http://www.imooc.com");
     if(open!=null){
        var newwin= window.open(open,"_blank","width=400.height=500,menubar=no,toolbar=no");  
     }
     else{
        alert("退出!"); 
     }
     
    }
    // 通过输入对话框,确定打开的网址,默认为 http://www.imooc.com/

    //打开的窗口要求,宽400像素,高500像素,无菜单栏、无工具栏。
    
    
  </script> 
 </head> 
 <body> 
	  <input type="button" value="新窗口打开网站" onclick="openWindow()" /> 
 </body>
</html>

改为prompt的话,函数返回的是输入框中的字符串,没有输入的话返回的是null,判断的时候,不是判断是否为true。

如果不用函数直接在脚本里写代码的话,如果放在body里的话是会直接运行的。

需不需函数的话就要看要求了,不过用函数的话方便一点,如果需要多次调用的话还是用函数方便,可以多次使用,不需要多次重写。

0 回复 有任何疑惑可以回复我~

同菜,我目前的感受是,封装成函数是方便在后面调用,这里小例子里也可以不用非要定义成函数。也不知道这样理解对不对。

各种变量关系是指什么呢?主要变量就是msg\ad两个,串起了三个步骤。

0 回复 有任何疑惑可以回复我~
#1

weixin_慕先生1212979

变量就是一个存储容器,因为JavaScript他是个弱类型语言,声明变量 并不用声明他的变量类型,所以var这个容器什么都能装,对象,int,,,,巴拉巴拉什么都能装,所以msg这个变量里面装的就是confirm这个弹窗对象,它是有返回值的,拿到了这个对象,就可以知道他的返回值,如果用户点的确定==true,就可以往下走。。。。。就记得var这个东西什么都能装,不懂就理解他装了一个对象。
2016-07-21 回复 有任何疑惑可以回复我~

http://img1.sycdn.imooc.com//578cee9d0001663005330560.jpg你完完全全理解错了,建议重新开始学,函数的使用,就是点击事件,请看我写的代码的第22行,onclick里面就是指调用哪里的函数,也就是调用script标签里面的 openWindow()这个函数,然后这个函数里面的东西才是执行的过程。。。你全部理解错了,重新看吧

0 回复 有任何疑惑可以回复我~
#1

李木木木 提问者

谢谢!我倒回去看了一下函数那小章,onclick点击调用函数,所以如果不使用函数页面刷新时会自动调用脚本里的代码,这样理解对吗?于是菜鸟又有问题了。。函数的调用都是使用onclick吗,两者绑定关系?。。。零基础简直菜得抠脚。。。谢谢指正!
2016-07-20 回复 有任何疑惑可以回复我~
#2

weixin_慕先生1212979 回复 李木木木 提问者

恩,你理解的对,就是一个动作触发器,你告诉程序,这个东西是点击要有事做的,做什么事呢?做onclick里面封装的函数。谁都是菜鸟开始的,一起加油吧!
2016-07-21 回复 有任何疑惑可以回复我~

你第一个图的错误太多了,没定义函数(但是onclick又要调用函数),代码里面的变量赋值,后面赋值的都把前面的覆盖了,所以这里应该定义两个变量。等等。。通常有很多操作的时候就要定义各种不同函数了,在函数里定义变量,用变量表示各种值等等,最后在用函数来实现页面的动态变化。在使用的时候调用需要的函数就可以了。另外定义函数必须使用关键字function 。建议你先去看看javascript DOM那本书,这些差不多就懂了。

0 回复 有任何疑惑可以回复我~
#1

李木木木 提问者

啊javascript DOM是入门级的吗,感觉我理解上有很多问题而且可能错过了较多的细节所以有点乱。非常感谢啊!
2016-07-20 回复 有任何疑惑可以回复我~
#2

喝牛奶对身体好 回复 李木木木 提问者

是的,多照着案例敲几次代码就基本懂了,我先看了一遍书,把讲的内容看懂,第二遍就开始敲代码,很多东西自然就懂了。我也刚开始学,互勉!
2016-07-22 回复 有任何疑惑可以回复我~

111

0 回复 有任何疑惑可以回复我~

找到了一个目前觉得最正确的答案。

http://img1.sycdn.imooc.com//578ceb1c0001d0fb05730335.jpg

有大大可以帮忙解释一下function函数使用的必要性以及各种变量的关系吗。。。

拜谢!

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
JavaScript入门篇
  • 参与学习       738120    人
  • 解答问题       9557    个

JavaScript做为一名Web工程师的必备技术,本教程让您快速入门

进入课程

请问如下代码是否符合这次编程练习的要求呢?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信