1、Ajax的工作原理
Ajax并非一种新的技术,而是几种原有技术的结合体。它由下列技术组合而成。
1、使用CSS和XML来表示
2、使用DOM模型来交互和动态显示
3、使用XMLHttpRequest来和服务器进行异步通信。
4、使用JavaScript来绑定和调用。
Ajax的原理简单来说通过XMLHttpRequest对象向服务器发起异步请求,从服务器获得数据,然后用JavaScript来操作DOM而更新页面。
2、DOM是什么?
DOM定义了访问HTML和XML文档的标准。
XML DOM定义了所有XML元素的对象和属性,以及访问它们的方法。
HTML DOM定义了所有HTML元素的对象和属性,以及访问它们的方法。
换言之,HTML DOM是关于如何获取、修改、添加或删除HTML元素的标准。
3、innerHTML和outerHTML的区别
获取某个元素的内容:
innerHTML:从对象的起始位置到终止位置的全部内容。
outerHTML:除了包含innerHTML的全部内容外,还包含对象标签本身。
例:获取id=“test”
<div id="test">
<span style="color:red">test1</span>
</div>
innerHTML的值是“<span style="color:red">test1</span>”。
outerHTML的值是“<div id="test"><span style="color:red">test1</span></div>”。
innerText的值是“test1”。
outerText的值是“test1”。
改变某个元素的内容:
例:id =“test”
<div id="test"></div>
innerHTML="<i>内容</i>"
//<div id="test"><i>内容</i></div> 展示出来的是斜体的“内容”,i作为html标签解析了。
outerHTML="<i>内容</i>"
//<i>内容</i> 就是替换了外面的标签,同时i会被解析,展现一个斜体的“内容”。
innerText="<i>内容</i>"
//<div id="test"><i>内容</i></div> 展示的内容为“<i>内容</i>”,i没有作为html的标签解析,而是直接输出了。
outerText="<i>内容</i>"
//替换外面的标签,i没有解析,页面显示“<i>内容</i>”。
4、Html页面加载完毕后运行某个js的两个方法
1、window.onload=function(){}
2、$(document).ready(function(){}) 可简写为:$(function(){})
两种方法的区别:
window.onload 当一个文档完全下载到浏览器中时,才会触发window.onload事件。也就是说页面上的所有元素加载完毕才会执行。这种情况对编写功能性代码非常有利,因为无需考虑加载的次序。
$(document).ready 会在DOM完全就绪并可以使用时调用。当HTML下载完成并解析为DOM树之后,代码就会执行。此时并不意味着所有关联的文件都已经下载完毕。
5、JavaScript有哪些打开一个页面的方式
在原来的窗体中直接跳转用:window.location.href="要跳转的页面"。
在新窗体中打开页面用:window.open('要跳转的页面')。
6、<jsp:include>和<%@include%>的区别
<jsp:include>和<%@include%>是jsp中包含页面的两种方法。
<%@include%>:当JSP转换成Servlet时引入指定文件 (静态包含) 。
<jsp:include>:当JSP页面被请求时引入指定文件(动态包含)。
对于静态包含,<%@include%>,中包含的文件(无论html文件还是jsp文件),只是简单的嵌入到主文件中,就是在jsp页面转化成Servlet时才嵌入到主文件中,因为运行的结果是只生成了一个Servlet。
而对于动态包含< jsp:incude>,如果被包含文件是动态的(jsp文件),那么就会生成两个Servlet,也就是被包含文件也要经过jsp引擎编译执行生成一个Servlet,两个Servlet通过request和reponse进行通信(包含的jsp是一个完整的文件有html、body等标签)。如果被包含的文件是静态的(html文件),那么这种情况和<%@include>就很相似,只生成了一个Servlet,但是他们之间没有进行简单的嵌入,而依然是通过request和reponse进行的通信