慕粉jason
2019-05-06 18:18
虽然现在不同浏览器可以同时加载多个js文件,但是js还是会阻碍页面加载的啊,js在没下载执行完之前,页面是不会继续向下加载的,这也是js为什么提倡放到底部的原因吗。
为什么教程中说html的解析过程不包含外部js的加载呢,按说外部js加载完之前,html肯定也是没加载完才对啊,希望老师详细讲讲。
【蜘蛛侠TG@abin789】-11800
【蜘蛛侠TG@abin789】-11801
【蜘蛛侠TG@abin789】-11802
【蜘蛛侠TG@abin789】-11803
【蜘蛛侠TG@abin789】-11804
【蜘蛛侠TG@abin789】-11805
【蜘蛛侠TG@abin789】-11806
【蜘蛛侠TG@abin789】-11807
【蜘蛛侠TG@abin789】-11808
【蜘蛛侠TG@abin789】-11809
【蜘蛛侠TG@abin789】-11810
【蜘蛛侠TG@abin789】-11811
【蜘蛛侠TG@abin789】-11812
【蜘蛛侠TG@abin789】-11813
【蜘蛛侠TG@abin789】-11814
【蜘蛛侠TG@abin789】-11815
【蜘蛛侠TG@abin789】-11816
【蜘蛛侠TG@abin789】-11817
【蜘蛛侠TG@abin789】-11818
【蜘蛛侠TG@abin789】-11819
【蜘蛛侠TG@abin789】-11820
【蜘蛛侠TG@abin789】-11821
【蜘蛛侠TG@abin789】-11822
【蜘蛛侠TG@abin789】-11823
【蜘蛛侠TG@abin789】-11824
【蜘蛛侠TG@abin789】-11825
【蜘蛛侠TG@abin789】-11826
【蜘蛛侠TG@abin789】-11827
【蜘蛛侠TG@abin789】-11828
【蜘蛛侠TG@abin789】-11829
【蜘蛛侠TG@abin789】-11830
【蜘蛛侠TG@abin789】-11831
【蜘蛛侠TG@abin789】-11832
【蜘蛛侠TG@abin789】-11833
【蜘蛛侠TG@abin789】-11834
【蜘蛛侠TG@abin789】-11835
【蜘蛛侠TG@abin789】-11836
【蜘蛛侠TG@abin789】-11837
【蜘蛛侠TG@abin789】-11838
【蜘蛛侠TG@abin789】-11839
【蜘蛛侠TG@abin789】-11840
【蜘蛛侠TG@abin789】-11841
【蜘蛛侠TG@abin789】-11842
【蜘蛛侠TG@abin789】-11843
【蜘蛛侠TG@abin789】-11844
【蜘蛛侠TG@abin789】-11845
【蜘蛛侠TG@abin789】-11846
【蜘蛛侠TG@abin789】-11847
【蜘蛛侠TG@abin789】-11848
【蜘蛛侠TG@abin789】-11849
【蜘蛛侠TG@abin789】-11850
【蜘蛛侠TG@abin789】-11851
【蜘蛛侠TG@abin789】-11852
【蜘蛛侠TG@abin789】-11853
【蜘蛛侠TG@abin789】-11854
【蜘蛛侠TG@abin789】-11855
【蜘蛛侠TG@abin789】-11856
【蜘蛛侠TG@abin789】-11857
【蜘蛛侠TG@abin789】-11858
【蜘蛛侠TG@abin789】-11859
【蜘蛛侠TG@abin789】-11860
【蜘蛛侠TG@abin789】-11861
【蜘蛛侠TG@abin789】-11862
【蜘蛛侠TG@abin789】-11863
【蜘蛛侠TG@abin789】-11864
【蜘蛛侠TG@abin789】-11865
【蜘蛛侠TG@abin789】-11866
【蜘蛛侠TG@abin789】-11867
【蜘蛛侠TG@abin789】-11868
【蜘蛛侠TG@abin789】-11869
【蜘蛛侠TG@abin789】-11870
【蜘蛛侠TG@abin789】-11871
【蜘蛛侠TG@abin789】-11872
【蜘蛛侠TG@abin789】-11873
【蜘蛛侠TG@abin789】-11874
【蜘蛛侠TG@abin789】-11875
【蜘蛛侠TG@abin789】-11876
【蜘蛛侠TG@abin789】-11877
【蜘蛛侠TG@abin789】-11878
【蜘蛛侠TG@abin789】-11879
【蜘蛛侠TG@abin789】-11880
【蜘蛛侠TG@abin789】-11881
【蜘蛛侠TG@abin789】-11882
【蜘蛛侠TG@abin789】-11883
【蜘蛛侠TG@abin789】-11884
【蜘蛛侠TG@abin789】-11885
【蜘蛛侠TG@abin789】-11886
【蜘蛛侠TG@abin789】-11887
【蜘蛛侠TG@abin789】-11888
【蜘蛛侠TG@abin789】-11889
【蜘蛛侠TG@abin789】-11890
【蜘蛛侠TG@abin789】-11891
【蜘蛛侠TG@abin789】-11892
【蜘蛛侠TG@abin789】-11893
【蜘蛛侠TG@abin789】-11894
【蜘蛛侠TG@abin789】-11895
【蜘蛛侠TG@abin789】-11896
【蜘蛛侠TG@abin789】-11897
【蜘蛛侠TG@abin789】-11898
【蜘蛛侠TG@abin789】-11899
【蜘蛛侠TG@abin789】-11900
【蜘蛛侠TG@abin789】-11901
【蜘蛛侠TG@abin789】-11902
【蜘蛛侠TG@abin789】-11903
【蜘蛛侠TG@abin789】-11904
【蜘蛛侠TG@abin789】-11905
【蜘蛛侠TG@abin789】-11906
【蜘蛛侠TG@abin789】-11907
【蜘蛛侠TG@abin789】-11908
【蜘蛛侠TG@abin789】-11909
【蜘蛛侠TG@abin789】-11910
【蜘蛛侠TG@abin789】-11911
【蜘蛛侠TG@abin789】-11912
【蜘蛛侠TG@abin789】-11913
【蜘蛛侠TG@abin789】-11914
【蜘蛛侠TG@abin789】-11915
【蜘蛛侠TG@abin789】-11916
【蜘蛛侠TG@abin789】-11917
【蜘蛛侠TG@abin789】-11918
【蜘蛛侠TG@abin789】-11919
【蜘蛛侠TG@abin789】-11920
【蜘蛛侠TG@abin789】-11921
【蜘蛛侠TG@abin789】-11922
【蜘蛛侠TG@abin789】-11923
【蜘蛛侠TG@abin789】-11924
【蜘蛛侠TG@abin789】-11925
【蜘蛛侠TG@abin789】-11926
【蜘蛛侠TG@abin789】-11927
【蜘蛛侠TG@abin789】-11928
【蜘蛛侠TG@abin789】-11929
【蜘蛛侠TG@abin789】-11930
【蜘蛛侠TG@abin789】-11931
【蜘蛛侠TG@abin789】-11932
【蜘蛛侠TG@abin789】-11933
【蜘蛛侠TG@abin789】-11934
【蜘蛛侠TG@abin789】-11935
【蜘蛛侠TG@abin789】-11936
【蜘蛛侠TG@abin789】-11937
【蜘蛛侠TG@abin789】-11938
【蜘蛛侠TG@abin789】-11939
【蜘蛛侠TG@abin789】-11940
【蜘蛛侠TG@abin789】-11941
【蜘蛛侠TG@abin789】-11942
【蜘蛛侠TG@abin789】-11943
【蜘蛛侠TG@abin789】-11944
【蜘蛛侠TG@abin789】-11945
【蜘蛛侠TG@abin789】-11946
【蜘蛛侠TG@abin789】-11947
【蜘蛛侠TG@abin789】-11948
【蜘蛛侠TG@abin789】-11949
【蜘蛛侠TG@abin789】-11950
【蜘蛛侠TG@abin789】-11951
【蜘蛛侠TG@abin789】-11952
【蜘蛛侠TG@abin789】-11953
【蜘蛛侠TG@abin789】-11954
【蜘蛛侠TG@abin789】-11955
【蜘蛛侠TG@abin789】-11956
【蜘蛛侠TG@abin789】-11957
【蜘蛛侠TG@abin789】-11958
【蜘蛛侠TG@abin789】-11959
【蜘蛛侠TG@abin789】-11960
【蜘蛛侠TG@abin789】-11961
【蜘蛛侠TG@abin789】-11962
【蜘蛛侠TG@abin789】-11963
【蜘蛛侠TG@abin789】-11964
【蜘蛛侠TG@abin789】-11965
【蜘蛛侠TG@abin789】-11966
【蜘蛛侠TG@abin789】-11967
【蜘蛛侠TG@abin789】-11968
【蜘蛛侠TG@abin789】-11969
【蜘蛛侠TG@abin789】-11970
【蜘蛛侠TG@abin789】-11971
【蜘蛛侠TG@abin789】-11972
【蜘蛛侠TG@abin789】-11973
【蜘蛛侠TG@abin789】-11974
【蜘蛛侠TG@abin789】-11975
【蜘蛛侠TG@abin789】-11976
【蜘蛛侠TG@abin789】-11977
【蜘蛛侠TG@abin789】-11978
【蜘蛛侠TG@abin789】-11979
【蜘蛛侠TG@abin789】-11980
【蜘蛛侠TG@abin789】-11981
【蜘蛛侠TG@abin789】-11982
【蜘蛛侠TG@abin789】-11983
【蜘蛛侠TG@abin789】-11984
【蜘蛛侠TG@abin789】-11985
【蜘蛛侠TG@abin789】-11986
【蜘蛛侠TG@abin789】-11987
【蜘蛛侠TG@abin789】-11988
【蜘蛛侠TG@abin789】-11989
【蜘蛛侠TG@abin789】-11990
【蜘蛛侠TG@abin789】-11991
【蜘蛛侠TG@abin789】-11992
【蜘蛛侠TG@abin789】-11993
【蜘蛛侠TG@abin789】-11994
【蜘蛛侠TG@abin789】-11995
【蜘蛛侠TG@abin789】-11996
【蜘蛛侠TG@abin789】-11997
【蜘蛛侠TG@abin789】-11998
【蜘蛛侠TG@abin789】-11999
【蜘蛛侠TG@abin789】-12000
【蜘蛛侠TG@abin789】-12001
可能我的描述有问题,html是顺序执行的,js在哪里被调用,就从哪里开始加载,js中类似getElementbyid这样的方法,需要你的dom树形成之后才能用,所以如果js写头部加载时,dom树是没有形成的,需要window.onload这样类似的方法进行判断,像window.onload这样的方法,被加载到之后不会立即执行,而是暂存在内存池里面,等条件满足之后再执行,加载和执行是两个概念,你可能把这个搞混了
整个html是从上到下,从左到右顺序读取的,js在头部调用,所以js的加载会在html的解析之前,但是js的执行需要等待html解析完成后才能进行,应该是这个逻辑。
html解析和js加载应该是分开的,js都是代码,一般不会很大,html里面会有图片什么的,解析相对更慢,Windows.onload需要等整个页面解析完,再执行js代码,效率太低,所以出现了domready。还有就是js代码必须在dom树形成之后才能进行定位,所以需要等待html先加载完成,而html一般是从上到下执行的,所以js放在底部一定程度上可以解决问题,但如果页面太复杂的话,需要外部调用js,就需要写逻辑来判断,dom树是否形成。不知道说清楚没有。
DOM探索之基础详解篇
98374 学习 · 238 问题
相似问题