老师好,有三个小问题需要指导一下。
1、使用document.write()显示结果时,space空格不起作用,必须使用  才可以,console.log()刚好相反;
2、document.write()使用<br/>换行,console.log()使用"/n"换行,类似的区别很多么,有没有相关资料?
3、声明变量为数字时,系统默认这是一个整型,包括在自增自减等运算时都是按照整数处理的,有没有使用小数的情况?小数该怎么声明?
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>ppt练习题</title> </head> <body> <!--按图完成效果,要求: (1)导航静态实现 (2)数据内容动态实现 (3)样式要写在style中,用动态实现。--> <script> var arr = ['全部','精华','分享','问答','招聘']; var ul = document.createElement('ul'); var ul_style = document.createAttribute('style'); ul_style.value = "list-style: none;padding: 0;margin: 0;"; ul.setAttributeNode(ul_style); document.body.appendChild(ul); for (var i = 0; i<arr.length ;i++){ var li = document.createElement('li'); var li_style = document.createAttribute('style'); li_style.value = "display: block;float: left;background: azure;margin: 0 5px;width:35px;height: 30px;line-height: 30px;text-align: center;"; if (i== 0){ li_style.value ='display: block;float: left;margin: 0 5px;width:35px;height: 30px;line-height: 30px;text-align: center;background:red;'; } li.setAttributeNode(li_style); var a = document.createElement('a'); a.innerHTML = arr[i]; li.appendChild(a); ul.appendChild(li); } </script> </body> </html>
老师,这个第一问是这个思路吗?
2、第二问数据内容动态实现是什么思路呢?是用循环和Input结合吗?把input在for循环中创建吗?判断条件的话应该怎么确定,能让他实现动态循环?
<!DOCTYPE html> <html lang="en" xmlns="http://www.w3.org/1999/html"> <head> <meta charset="UTF-8"> <title>数据解析</title> </head> <body> <form action="" method="get"> 姓名:<input type="text" name="userName"></br> 年龄:<input type="text" name="age"></br> 性别:<input type="text" name="sex"></br> <input type="submit"> </form> <button>解析数据</button> <script> var but=document.querySelector("button"); function dataParse(outInfo) { var obj = {}; var infoStr = outInfo; //先获取?后面的内容 var realInfo = infoStr.slice(1); var proArr = realInfo.split("&"); for (var i = 0; i < proArr.length; i++) { var tempArr = proArr[i].split("="); obj[tempArr[0]] = tempArr[1]; } return obj; } but.onclick=function(){ var dataObj=dataParse(document.location.search); console.log(dataObj); } </script> </body> </html> 老师 我想请问一下,为什么我的也是用英文的,但是在控制台输出的时候却是加密的样子呢?
老师 您能全面一点么 三种引入的方式您这都没有讲啊。
老师,我想自定义一个alert()提示框,实现和alert一样的功能,提示框出现时页面代码停止执行,提示框关闭后页面代码继续执行。这个要怎么实现呢?
<div> <div class="div1">div1</div> <div id="div2">div2</div> </div> <button id="but">点我</button> <body>
<script> var but=document.getElementById('dut'); var div=document.querySelector('div'); var div1=document.querySelector('.div1'); var div2=document.getElementById('div2'); but.onclick=function () { if (div.hasChildNodes()){ div.removeChild(div.firstChild); }else { alert('已经没有了'); } } </script>
老师,这个地方为什么后报错呢?是浏览器不兼容吗?
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>lastChild</title> </head> <body> <div class="div1"> div1 <div id="div2">div2</div> </div> <script> var div1 = document.querySelector('.div1'); //firstChild / lastChild console.log(div1.firstChild); console.log(div1.lastChild); console.log(document.body.firstChild); console.log(document.body.lastChild); </script> <div>最后的内容</div> </body> </html>
老师,我这个代码里的body的lastChild,最后一个子节点,不应该是 div内容 或者 #text 吗?为什么还是script?script并不是最后一个子节点吧?
老师:
下午好,我尝试了按网页的模式去做练习,但还是实现不了,现在把代码和网页上的报错分别以文字和图片格式发给你,请指导,谢谢!
代码:
=[,,,,]; =.(); =.(); .=; .(); (=;<.;++){ =.(); =.(); .=; .(); =.(); =.(); .(); .=[]; .(); .(); } ..();
20200808作业.png
<script> var div = document.querySelector("#div"); console.log("网页可见区域宽client" + document.body.clientWidth); console.log("网页可见区域高client" + document.body.clientHeight); console.log("网页可见区域宽offset" + document.body.clientWidth); console.log("网页可见区域高offset" + document.body.clientHeight); console.log("网页正文全文宽scroll"+document.body.scrollWidth); console.log("网页正文全文高scroll"+document.body.scrollHeight); console.log("网页被卷曲的宽scroll"+document.body.scrollLeft); console.log("网页被卷曲的高scroll"+document.body.scrollTop); console.log("------------------------------------"); console.log("浏览器宽"+window.outerWidth); console.log("浏览器高"+window.outerHeight); console.log("浏览器视口宽(计算滚动条)"+window.innerWidth); console.log("浏览器视口高(计算滚动条)"+window.innerHeight); console.log("浏览器视口宽(不计算滚动条)"+document.documentElement.clientWidth); console.log("浏览器视口高(不计算滚动条)"+document.documentElement.clientHeight); console.log("返回页面滚动距离X"+window.pageXOffset); console.log("返回页面滚动距离Y"+window.pageYOffset); console.log("浏览器距离屏幕X"+window.screenX); console.log("浏览器距离屏幕Y"+window.screenY); </script>
在页面中插入一个宽高分别为3000和2000的div,用
document.body.clientHeight
和
获取的文档可视区域高度为什么都为2000呢?
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>构造函数</title> </head> <body> <script> function Person(name,age,height,a) { this.userName=name; this.userAge=age; this.userHeight=height; this.userAbilitty=a; } var beixi=newPerson=("贾先生","18","60",function () {console.log("敲代码");}) var shishi=newPerson=("刘诗诗","16","40",function () {console.log("2");}) console.log(beixi); console.log(shishi); </script> </body> </html>
老师我这个怎么是这样的 怎么只出来最后一项内容呢?
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>变量提升</title> </head> <body> <script> //函数可以像简单值一样作为函数的返回值 function info() { console.log('我是谁'); console.log('我会干什么'); function caiyi() { console.log('我要表演才艺'); } return caiyi; } info(); //直接调用,会执行里面的内容 var result = info(); //返回给调用者 result(); //直接调用 </script> </body> </html>
1、老师,为什么info(); 直接调用没有执行'我要表演才艺’?
2、为什么必须要把info();赋值给一个变量才行,赋值后var result是一个函数吗?老师说的这句是返回给调用者,这是什么意思?caiyi()这个是在哪里执行的?为什么执行了?
3、为什么result();可以直接调用,这句是函数吗?完整的语句执行是怎么执行的?没有看明白这个顺序。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>数据解析</title> </head> <body> <form action=""method="get"> 姓名: <input type="text" name="userName"><br> 姓名: <input type="text"name="age"><br> 姓名: <input type="text" name="sex"><br> <input type="submit"/> </form> <br> <button>解析数据</button> <script> var but=document.querySelector('button'); function dataParse(outInfo){ var obj={}; var inforStr=outInfo; //获取?后面的数据 var realInfo=inforStr.slice(1); var proArr=realInfo.split("&"); for (var i=0;i<proArr.length;i++){ var tempArr= proArr[i].split("="); obj[tempArr[0]]=tempArr[1]; } return obj; } but.onclick=function () { var dataObj=dataParse(window.location.search); console.log(decodeURIComponent(dataObj)); } </script> </body> </html>
老师麻烦给看看是哪里错了第二个问题这个outInfo是怎么回事?不明白 谢谢老师这个是beixi赋值给username,还有age跟sex没有赋值吧。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>自定义右击菜单案例</title> <style> *{padding: 0;margin: 0} ul{ list-style: none; background-color: darkgray; min-width: 220px; display: inline-block; position: absolute; display: none; } ul li{ height: 30px; line-height: 30px; padding:5px 20px; cursor: pointer; transition: 0.3s; } ul li:hover{ background-color: olivedrab; color: #fff; } </style> </head> <body> <ul> <li>北京尚学堂</li> <li>欢迎你</li> <li>去百度搜索页面中选中的内容</li> <li>赚大钱</li> </ul> <textarea cols="80" rows="20"></textarea> <script> var ul=document.querySelector("ul"); document.oncontextmenu=function (eve) { return false;//表示事件禁用 } document.onmouseup=function (eve) { //eve.button能够判断鼠标用的是哪个按钮 //0左键 1滑轮 2邮件 if (eve.button==2){ ul.style.display="inline-block"; //设置鼠标点击的位置 ul.style.left=eve.clientX+"px"; ul.style.top=eve.clientY+"px"; }else { //关闭菜单 ul.style.display="none"; } } //点击某一菜单选项时触发的事件(事件委托) ul.onmousedown=function (eve) { if (eve.target.innerHTML=='北京尚学堂'){ alert("那就去吧"); }else if (eve.target.innerHTML=='欢迎你') { if (confirm('欢迎你?')) { window.close();} }else if (eve.target.innerHTML=='去百度搜索页面中选中的内容'){ var result=document.getSelection().toString(); window.open('http://www.baidu.com/s?wd='+result); }else { var result=prompt("输入内容然后去百度"); window.open('http://www.baidu.com/s?wd='+result); } } </script> </body> </html>
老师我写的这个怎么不跳转百度?为什么要变成字符串的形式?
eve.target.contentwindow.name,老师能解释视频当中的contentwindow是啥意思吗? 在10分10秒左右。谢老师
eve.target.contentwindow.name,老师能解释视频当中的contentwindow是啥意思吗?
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637