1.今天写js碰到一个奇怪的问题,写好的js放到body里面执行,但是放到head中没有任何效果,为什么导致这种原因呢?

看失效代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title> new document </title>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
<style type="text/css">
.login{width:40px;height:25px;line-height:25px;background-color:#4E74A5;margin-top:30px;text-align:center;color:#FFF;}
</style>
<script type="text/javascript" src="jquery-1.7.1.min.js"></script>
<script type="text/javascript">
$(".login").click(function(){
alert(1);
});
</script>
</head>
<body>
<input type="text" class="pass" />
<div id="enter" class="login"> 登录</div>
</body>
</html>
2.解决办法:把js代码放到body中,或者利用 window.onload = function(){} 代码包裹,文档加载之后再执行,以后不建议放到head中。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title> new document </title>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
<style type="text/css">
.login{width:40px;height:25px;line-height:25px;background-color:#4E74A5;margin-top:30px;text-align:center;color:#FFF;}
</style>
<script type="text/javascript" src="jquery-1.7.1.min.js"></script>
<script type="text/javascript">
window.onload = function(){
$(".login").click(function(){
alert(1);
});
}
</script>
</head>
<body>
<input type="text" class="pass" />
<div id="enter" class="login"> 登录</div>
</body>
</html>
3.原因:
因为文档还没加载,就读了js,js就不起作用了想在head里用的话,用window.onload = function(){//这里包裹你的代码}
js可以分为外部的和内部的,外部的js一般放到head内。内部的js也叫本页面的JS脚本,内部的js一般放到body内,这样做的目的有很多:
1.不阻塞页面的加载(事实上js会被缓存)。
2.可以直接在js里操作dom,这时候dom是准备好的,即保证js运行时dom是存在的。
3.建议的方式是放在页面底部,监听window.onload 或 readystate 来触发js。
4.延伸:
head内的js会阻塞页面的传输和页面的渲染。head 内的 JavaScript 需要执行结束才开始渲染 body,所以尽量不要将 JS 文件放在 head 内。可以选择在 document 完成时,或者特定区块后引入和执行 JavaScript。head 内的 JavaScript 需要执行结束才开始渲染 body,所以尽量不要将 JS 文件放在 head 内。可以选择在 document 完成时,或者特定区块后引入和执行 JavaScript。
所以在head内的js一般要先执行完后,才开始渲染body页面。为了避免head引入的js脚本阻塞流浪器中主解析引擎对dom的解析工作,对dom的渲染,一般原则是,样式在前面,dom文档,脚本在最后面。遵循先解析再渲染再执行script这个顺序。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!
# js
# head
# js放到head失效
# JS实现发送短信验证后按钮倒计时功能(防止刷新倒计时失效)
# JS失效 提示HTML1114: (UNICODE 字节顺序标记)的代码页 utf-8 覆盖(MET
# 使用jQuery的load方法设计动态加载及解决被加载页面js失效问题
# JS出现失效的情况总结
# 使用微信内嵌H5网页解决JS倒计时失效问题
# jsp 网站引入外部css或者js失效问题解决
# js 开发之autocomplete="off"在chrom中失效的解决办法
# 放在
# 加载
# 文档
# 要将
# 可以选择
# 还没
# 有很多
# 就不
# 则是
# 没有任何
# 这样做
# 可以直接
# 要先
# 在前面
# 本页面
# 解决办法
# 为了避免
# 完后
# 读了
# 也叫
相关文章:
如何快速查询网站的真实建站时间?
企业网站制作公司网页,推荐几家专业的天津网站制作公司?
香港服务器网站生成指南:免费资源整合与高速稳定配置方案
Swift中switch语句区间和元组模式匹配
孙琪峥织梦建站教程如何优化数据库安全?
如何在万网自助建站平台快速创建网站?
红河网站制作公司,红河事业单位身份证如何上传?
设计网站制作公司有哪些,制作网页教程?
如何续费美橙建站之星域名及服务?
C#如何序列化对象为XML XmlSerializer用法
黑客入侵网站服务器的常见手法有哪些?
建站之星如何修改网站生成路径?
香港服务器建站指南:外贸独立站搭建与跨境电商配置流程
如何选择建站程序?包含哪些必备功能与类型?
小说建站VPS选用指南:性能对比、配置优化与建站方案解析
江苏网站制作公司有哪些,江苏书法考级官方网站?
建站主机选购指南:核心配置优化与品牌推荐方案
代刷网站制作软件,别人代刷火车票靠谱吗?
如何在沈阳梯子盘古建站优化SEO排名与功能模块?
建站之星后台密码遗忘如何找回?
如何快速使用云服务器搭建个人网站?
建站之星如何优化SEO以实现高效排名?
如何选择香港主机高效搭建外贸独立站?
建站之星价格显示格式升级,你的预算足够吗?
相亲简历制作网站推荐大全,新相亲大会主持人小萍萍资料?
如何用IIS7快速搭建并优化网站站点?
如何在Golang中指定模块版本_使用go.mod控制版本号
网站图片在线制作软件,怎么在图片上做链接?
免费的流程图制作网站有哪些,2025年教师初级职称申报网上流程?
专业网站制作服务公司,有哪些网站可以免费发布招聘信息?
金*站制作公司有哪些,金华教育集团官网?
建站之星如何通过成品分离优化网站效率?
制作农业网站的软件,比较好的农业网站推荐一下?
c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗
网站建设制作、微信公众号,公明人民医院怎么在网上预约?
网站制作公司排行榜,抖音怎样做个人官方网站
济南网站制作的价格,历城一职专官方网站?
家庭服务器如何搭建个人网站?
制作无缝贴图网站有哪些,3dmax无缝贴图怎么调?
css网站制作参考文献有哪些,易聊怎么注册?
如何快速搭建安全的FTP站点?
宝塔新建站点报错如何解决?
制作营销网站公司,淘特是干什么用的?
如何快速启动建站代理加盟业务?
如何通过可视化优化提升建站效果?
网站制作软件免费下载安装,有哪些免费下载的软件网站?
建站主机服务器选型指南与性能优化方案解析
如何在云主机上快速搭建多站点网站?
如何在IIS中配置站点IP、端口及主机头?
微信推文制作网站有哪些,怎么做微信推文,急?
*请认真填写需求信息,我们会在24小时内与您取得联系。