IE8中jQuery.load()加载页面不显示的原因


Posted in jQuery onNovember 15, 2018

一、jQuery.load()

  jQuery.load(url,[data],[callback])通过Ajax异步请求加载服务器中的数据,并把数据放到指定元素中。

•url :请求服务器的地址
•data :可选项,请求时发送的数据
•callback :可选项,请求成功后的回调函数

例:

$(".content").load(" https://www.imooc.com/data/fruit_part.html ")

二、IE8中使用jQuery.load()加载页面无法显示的原因

  首先,在IE8中,是可以使用jQuery.load()方法的(在兼容IE的jQuery版本下)

  原因:在被加载页面中存在没有成对闭合的html标签,如<div>

下面介绍下jquery中的load()方法使用要点

今天做在线聊天网页,聊天可以配图,需要使用弹出层的方式浏览大图效果。总共三层,底层html主结构,中间半透明遮罩,顶层是缩略图放大后的大图。用户点击缩略图后在半透明遮罩上呈现大图。

因为在线聊天,图片数量和地址都是动态未知的,因此用户点击缩略图时,应该在body下动态生成一个大图元素,并居中显示。代码如下:

$(".smallImg").click(function(){
       var imgPath = $(this).attr("src");
       var zh_bigImg = "<img alt='大图' class='zh_bigImg'/>"
       var maskBg = "<div class='maskDiv'></div>"
       $("body").append(zh_bigImg).append(maskBg);
       $(".zh_bigImg").attr("src",imgPath); //将获取的缩略图src值赋给新生成的大图
   //以下代码用于设置大图的居中显示,先设置大图的css为绝对定位,且top:50%;left:50%.
       var bigImgTop = -$(".zh_bigImg").height()/2;
       var bigImgLeft = -$(".zh_bigImg").width()/2;
       $(".zh_bigImg").css({
         "margin-top":bigImgTop,
         "margin-left":bigImgLeft
       });
       var zhBigImg = $(".zh_bigImg").get(0); //将jq对象转化为js对象
       zhBigImg.onclick=function(){
         $(".zh_bigImg,.maskDiv").fadeOut(function(){
          $(this).remove(); //淡出效果完成后再移除此元素!
         });
       }
     });

当刚刚将缩略图的src赋给大图时,就来获取大图高度值和宽度值,这样似乎不妥。结果却是这样,新生成的大图位置始终在top:50%;left:50%处,F12打开调试窗口发现margin-top,margin-left都为0,在各大浏览器或多或少都会存在一些问题,时而有效时而无效。后来才发现,忘了使用load()方法。应该让大图加载完毕后,再来获取高度和宽度值。

 改为这样:

$(".zh_bigImg").load(function(){
      var bigImgTop = -$(this).height()/2;
      var bigImgLeft = -$(this).width()/2;
      $(this).css({
        "margin-top":bigImgTop,
        "margin-left":bigImgLeft
      });
})

     后就正常了。

此外,jquery在处理页面动态创建的元素方面,好多地方都需要注意。它不会响应动态创建的元素的事件,只有用live()方法来绑定事件,才能解决问题(直接用原生的js不知道行不行)。比如点击大图,应该是清除这个元素。

$(".zhBigImg").click(function(){$(this).remove()}),点击大图时页面是不会有任何响应的。改为:$(".zhBigImg").live('click',function(){$(this).remove()})则可以。

总结

以上所述是小编给大家介绍的IE8中jQuery.load()加载页面不显示的原因,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

jQuery 相关文章推荐
jQuery ajax请求struts action实现异步刷新
Apr 19 jQuery
jQuery+PHP+Mysql实现抽奖程序
Apr 12 jQuery
jQuery实现 RadioButton做必选校验功能
Jun 15 jQuery
jquery图片放大镜效果
Jun 23 jQuery
JQuery和html+css实现带小圆点和左右按钮的轮播图实例
Jul 22 jQuery
jQuery 实时保存页面动态添加的数据的示例
Aug 14 jQuery
jQuery实现为动态添加的元素绑定事件实例分析
Sep 07 jQuery
使用jquery Ajax实现上传附件功能
Oct 23 jQuery
jQuery事件多次绑定与解绑问题实例分析
Feb 19 jQuery
JQuery常见节点操作实例分析
May 15 jQuery
Jquery实现获取子元素的方法分析
Aug 24 jQuery
Jquery ajax书写方法代码实例解析
Jun 12 jQuery
JQuery模拟实现网页中自定义鼠标右键菜单功能
Nov 14 #jQuery
详解jQuery获取特殊属性的值以及设置内容
Nov 14 #jQuery
jQuery 操作 HTML 元素和属性的方法
Nov 12 #jQuery
用jQuery将JavaScript对象转换为querystring查询字符串的方法
Nov 12 #jQuery
Jquery和CSS实现选择框重置按钮功能
Nov 08 #jQuery
jQuery+PHP实现上传裁剪图片
Jun 29 #jQuery
jQuery Ajax实现Select多级关联动态绑定数据的实例代码
Oct 26 #jQuery
You might like
PHP+MYSQL会员系统的登陆即权限判断实现代码
2011/09/23 PHP
PHP 处理TXT文件(打开/关闭/检查/读取)
2013/05/13 PHP
Yii数据库缓存实例分析
2016/03/29 PHP
PHP5.3连接Oracle客户端及PDO_OCI模块的安装方法
2016/05/13 PHP
js 发个判断字符串是否为符合标准的函数
2009/04/27 Javascript
JS操作Cookies包括(读取添加与删除)
2012/12/26 Javascript
js二级地域选择的实现方法
2013/06/17 Javascript
浅析JS中document对象的一些重要属性
2014/03/06 Javascript
jQuery中attr()和prop()在修改checked属性时的区别
2014/07/18 Javascript
用js判断是否为360浏览器的实现代码
2015/01/15 Javascript
jQuery中wrapInner()方法用法实例
2015/01/16 Javascript
jQuery使用toggleClass方法动态添加删除Class样式的方法
2015/03/26 Javascript
Node.js编写爬虫的基本思路及抓取百度图片的实例分享
2016/03/12 Javascript
ComboBox(下拉列表框)通过url加载调用远程数据的方法
2017/08/06 Javascript
vue-router 源码实现前端路由的两种方式
2018/07/02 Javascript
JS实现移动端点击按钮复制文本内容
2019/07/28 Javascript
ES6使用新特性Proxy实现的数据绑定功能实例
2020/05/11 Javascript
[01:13:08]2018DOTA2亚洲邀请赛4.6 淘汰赛 mineski vs LGD 第二场
2018/04/10 DOTA
Python 通过URL打开图片实例详解
2017/06/01 Python
Python实现学校管理系统
2018/01/11 Python
Python3中正则模块re.compile、re.match及re.search函数用法详解
2018/06/11 Python
Django rest framework jwt的使用方法详解
2019/08/08 Python
Django中提示消息messages的设置方式
2019/11/15 Python
python wav模块获取采样率 采样点声道量化位数(实例代码)
2020/01/22 Python
使用Pycharm(Python工具)新建项目及创建Python文件的教程
2020/04/26 Python
Bodum官网:咖啡和茶壶、玻璃器皿、厨房电器等
2018/08/01 全球购物
英国儿童鞋和靴子:Start-Rite
2019/05/06 全球购物
大学生两会精神学习心得体会
2014/03/10 职场文书
初一学生期末评语
2014/04/24 职场文书
大学国际贸易专业自荐信
2014/06/05 职场文书
法学专业求职信
2014/07/15 职场文书
电子商务专业求职信范文
2015/03/19 职场文书
离婚起诉书范文2016
2015/11/26 职场文书
Windows安装Anaconda3的方法及使用过程详解
2021/06/11 Python
关于nginx 实现jira反向代理的问题
2021/09/25 Servers
排查并解决MySQL生产库内存使用率高的报警
2022/04/11 MySQL