先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Web前端全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip1024c (备注前端)
正文
-
二级域名相同。
-
协议相同。
-
端口相同。
document.domain
默认的值是整个域名,所以即使两个域名的二级域名一样,那么他们的 document.domain
也不一样。
使用方法就是将符合上述条件页面的 document.domain
设置为同样的二级域名。这样我们就可以使用其他页面的 window
对象引用做我们想做的任何事情了。(╯▔▽▔)╯
补充知识:
- x.one.example.com 和 y.one.example.com 可以将
document.domain
设置为 one.example.com,也可以设置为 example.com。
document.domain
只能设置为当前域名的一个后缀,并且包括二级域名或以上(.edu.cn
这种整个算顶级域名)。
我们直接操刀演示,用两个网站 http://wenku.baidu.com/ 和 http://zhidao.baidu.com/。
这两个网站都是 http
协议,端口都是 80, 且二级域名都是 baidu.com。
打开 http://wenku.baidu.com/,在 console 中输入代码:
document.domain = ‘baidu.com’;
var otherWindow = window.open(‘http://zhidao.baidu.com/’);
我们现在已经发现百度知道的网页已经打开了,在百度知道网页的 console 中输入以下代码:
document.domain = ‘baidu.com’;
现在回到百度文库的网页,我们就可以使用百度知道网页的 window
对象来操作百度知道的网页了。例如:
var divs = otherWindow.document.getElementsByTagName(‘div’);
上面这个例子的使用方法并不常见,但是非常详细的说明了这种方法的原理。
这种方法主要用在控制 <iframe>
的情况中。
比如我的页面(http://one.example.com/index.html)中内嵌了一个 <iframe>
:
我们在 iframe.html 中使用 JavaScript 将 document.domain
设置好,也就是 example.com。
在 index.html 执行以下脚本:
var iframe = document.getElementById(‘iframe’);
document.domain = ‘example.com’;
iframe.contentDocument; // 框架的 document 对象
iframe.contentWindow; // 框架的 window 对象
这样,我们就可以获得对框架的完全控制权了。
补充知识(绝对干货):
当两个页面不做任何处理,但是使用了框架或者
window.open()
得到了某个页面的window
对象的引用,我们可以直接访问的属性有哪些?
| 方法 |
| — |
|
window.blur
|
|
window.close
|
|
window.focus
|
|
window.postMessage
|
|
window.location.replace
|
| 属性 | 权限 |
| — | — |
|
window.closed
| 只读 |
|
window.frames
| 只读 |
|
window.length
| 只读 |
|
window.location.href
| 只写 |
|
window.opener
| 只读 |
|
window.parent
| 只读 |
|
window.self
| 只读 |
|
window.top
| 只读 |
|
window.window
| 只读 |
3. window.name
我们来看以下一个场景:
随意打开一个页面,输入以下代码:
window.name = “My window’s name”;
location.href = “http://www.qq.com/”;
再检测 window.name
:
window.name; // My window’s name
可以看到,如果在一个标签里面跳转网页的话,我们的 window.name
是不会改变的。
基于这个思想,我们可以在某个页面设置好 window.name
的值,然后跳转到另外一个页面。在这个页面中就可以获取到我们刚刚设置的 window.name
了。
由于安全原因,浏览器始终会保持
window.name
是string
类型。
这个方法也可以应用到与 <iframe>
的交互上来。
我的页面(http://one.example.com/index.html)中内嵌了一个 <iframe>
:
在 iframe.html 中设置好了 window.name
为我们要传递的字符串。
我们在 index.html 中写了下面的代码:
var iframe = document.getElementById(‘iframe’);
var data = ‘’;
iframe.onload = function() {
data = iframe.contentWindow.name;
};
定睛一看,为毛线报错?
细心的读者们肯定已经发现了,两个页面完全不同源啊!
由于 window.name 不随着 URL 的跳转而改变,所以我们使用一个暗黑技术来解决这个问题:
var iframe = document.getElementById(‘iframe’);
var data = ‘’;
iframe.onload = function() {
iframe.onload = function(){
data = iframe.contentWindow.name;
}
iframe.src = ‘about:blank’;
};
或者将里面的 about:blank 替换成某个同源页面(最好是空页面,减少加载时间)。
ajax
1)ajax请求的原理/ 手写一个ajax请求?
2)readyState?
3)ajax异步与同步的区别?
4)ajax传递中文用什么方法?
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
存中…(img-fkR1uvYb-1713320845202)]
[外链图片转存中…(img-g2qxn3Oa-1713320845202)]
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)
[外链图片转存中…(img-Cz2gM7fJ-1713320845202)]
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!