面试总结篇——那些曾经不会的题

xiaoxiao2021-02-28  85

问题汇总: 1、跨域问题 2、content-type 3、html5语义化标签

跨域问题

1、耳熟能详的cores 服务器设置Access-Control-Allow-OriginHTTP响应头之后,浏览器将会允许跨域请求

2、HTML5新特性:postMessage

someWindow.postMessage(message, targetOrigin);

参数解析: 1、someWindow: 对接收信息页面的window的引用。可以是页面中iframe的contentWindow属性;window.open的返回值;通过name或下标从window.frames取到的值。 2、message: 所要发送的数据,string类型。 3、targetOrigin: 用于限制someWindow,“*”表示不作限制。

示例: a.com/index.html中的代码:

<iframe id="ifr" src="b.com/index.html"></iframe> <script type="text/javascript"> window.onload = function() { var ifr = document.getElementById('ifr'); var targetOrigin = 'http://b.com'; // 若写成'http://b.com/c/proxy.html'效果一样;若写成'http://c.com'就不会执行postMessage了 ifr.contentWindow.postMessage('I was there!', targetOrigin); }; </script>

b.com/index.html中的代码:

<script type="text/javascript"> window.addEventListener('message', function(event){ // 通过origin属性判断消息来源地址 if (event.origin == 'http://a.com') { alert(event.data); // 弹出"I was there!" alert(event.source); // 对a.com、index.html中window对象的引用;但由于同源策略,这里event.source不可以访问window对象 } }, false); </script>

3、可跨域的DOM

所有具有src属性的HTML标签都是可以跨域的,包括< img >, < script >(JSONP)

content-type

传送门:https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Type

提交表单,使用Content-Type: multipart/form-data

html5语义化标签

包括: header, footer, hgroup, nav, aside, section, article, address

精讲可参见w3school

转载请注明原文地址: https://www.6miu.com/read-34639.html

最新回复(0)