首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在动态加载div内容之前添加图片jquery

在动态加载div内容之前添加图片jquery
EN

Stack Overflow用户
提问于 2019-03-15 19:43:26
回答 1查看 54关注 0票数 0

我有一个iframe,我将在其中显示文本文件中的内容。它会不断地检查文件夹中是否有该文本文件。直到文本文件不在那里,我希望它显示一个gif或图像,内容到达后,它将显示内容,gif将被隐藏。如何使用jquery和HTML实现这一点?我写的代码如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<html>
<head>
  <script src="http://code.jquery.com/jquery-latest.js"></script>
  <script>
    setInterval(my_function,5000); 
    function my_function(){
      console.log("reloading...");
      $('#printdiv').load(location.href);
    }
  </script>
</head>
<body>
 <div>
  <div id="printdiv">
    <p><iframe id = "frame1" src="test.txt" frameborder="0" width="95%">
 <img id = "imgProg" alt = "Progress" src = "ajax-loader.gif" visible = 
"false"/>
</div>
</iframe></p>
  </div>  
</body>
</html>

我们将非常感谢您的帮助

EN

回答 1

Stack Overflow用户

发布于 2019-03-16 15:58:04

我在下面做的是一个等待加载的iframe的简化方法,同时在后台显示了一个gif。当iframe完全加载时,gif将消失。请注意,这是特定于jQuery的。

我已经删除了你的代码的<img>,这将不起作用。我通过向div#printdiv添加一个名为load-gif的类来简化它,并为它提供了background样式。

我还添加了一个不透明函数。否则,您会看到一个页面被加载到iframe中,而gif仍然在后台。为了避免这种情况,iframe在完全加载之前是不可见的(opacity: 0;),然后不透明度会变成opacity: 1;

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
body {
  height: 40vw;
  width: 100%;
  background-color: #e4e4e4;
}

#printdiv {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #e4e4e4;
  height: 100%;
  margin: 3em;
}

#printdiv>p,
body>div,
#frame1 {
  width: 100%;
  height: 100%;
}

#printdiv,
#frame1 {
  background-color: white;
}


/* Below CSS are the important factors, above is just example styling. */

#frame1 {
  opacity: 0; /* set at 0 to avoid gif and iframe mixture in the same div */
}

.load-gif { /* extra class to load gif */
  background: url(https://loading.io/assets/img/ajax.gif) center no-repeat;
  background-size: contain;
}
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!-- begin snippet: js hide: false console: true babel: false -->
<html>

<head>
  <script src="http://code.jquery.com/jquery-latest.js"></script>
  <script>
    jQuery(document).ready(function() { // starts DOM page is ready
      jQuery("#frame1").on("load", function() { // when iframe is completely loaded
        jQuery(".load-gif").css("background", "unset"); // removes gif
        jQuery(this).css("opacity", "1"); // set opacity to normal value
      });
    });
  </script>
</head>

<body>
  <div>
    <div id="printdiv" class="load-gif">
      <p>
        <iframe id="frame1" src="/" frameborder="0"></iframe>
      </p>
    </div>
  </div>
</body>

</html>

另一种方法是在加载iframe后完全删除load-gif类。jQuery将如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
jQuery(document).ready(function() { // starts DOM page is ready
  jQuery("#frame1").on("load", function() { // when iframe is completely loaded
    jQuery('#printdiv').removeClass("load-gif"); // removes gif class
    jQuery(this).css("opacity", "1"); // set opacity to normal value
  });
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55189697

复制
相关文章
jQuery动态添加/删除元素及内容
添加新的 HTML 内容,四种方法:可根据上面的图片来区分四种方法插入元素的位置。
德顺
2019/11/12
7.1K0
js动态添加div
因为每个input标签的name如果相同的话, 在后端接收的时候会出错, 所以我的解决办法就是在name后加上一个数字, 后端用一个循环进行接收
烟草的香味
2019/07/25
24.5K0
jquery预加载图片
(function($) { var cache = []; // Arguments are image paths relative to the current page. $.preLoadImages = function() { var args_len = arguments.length; for (var i = args_len; i--;) { var cacheImage = document.createElement('img');
用户8671053
2021/09/23
7.8K0
jQuery实现图片懒加载
一、懒加载 1.什么是懒加载 目前,网络上各大论坛,尤其是一些图片类型的网站上,在图片加载时均采用了一种名为懒加载的方式,具体表现为,当页面被请求时,只加载可视区域的图片,其它部分的图片则不加载,只有这些图片出现在可视区域时才会动态加载这些图片,从而节约了网络带宽和提高了初次加载的速度。 2.懒加载的原理 页面中的img元素,如果没有src属性,浏览器就不会发出请求去下载图片,只有通过javascript设置了图片路径,浏览器才会发送请求。 懒加载的原理就是先在页面中把所有的图片统一使用一张占位图进行占位,
小胖
2018/06/27
13.7K0
JQuery之图片懒加载
由于现在很多的网站都带有大量的图片,而图片的加载又会特别的慢,特别是在移动端,懒加载就显的特别重要了,说白了就是按需加载,用户要看到哪里就显示哪里,下面来记录一下懒加载的基本实现步骤!
越陌度阡
2020/11/26
4.6K0
jquery实现表格动态添加
//点击追加触发 $(function(){ $("#button").click(function(){ var div_ = $("#sel").val(); var context = $("#context").val(); append(div_,context); //$("#tab tr:not(:first)").remove(); //$("#tab tbody").empty(); $("#tab tbody").remove(); query(); }); }); //点击查询全部触发 $(function(){ $("#but").click(function(){ $("#tab tbody").remove(); //$("#tab tr:not(:first)").remove(); //$("#tab tbody").empty(); query(); }); }); //点击模糊查询触发 $(function(){ $("#query").click(function(){ var context = $("#context").val(); alert("您输入的内容为:"+context); $("#tab tr:not(:first)").empty(); //$("table tbody").remove(); queryByContext(); }); }); //删除事件 function del(id){ var url = "testController/delModel"; $.ajax({ type: 'POST', url: url, data:{id: id}, dataType: 'json', success: function(data){ alert("数据库删除成功"); $("#tab tr:not(:first)").empty(); query(); }}); }; //编辑事件 function upd(id){ var url = ""; $.ajax({ type: 'POST', url: url, data:{id: id}, dataType: 'json', success: function(data){ alert("数据库编辑成功"); $("#tab tr:not(:first)").empty(); query(); }}); } //添加方法 function append(div_,context){ $("#"+div_).append("<tr><td>"+ div_ +"</td>"+"<td>"+context+"</td></tr>"); $.get("testController/addModel",{div_id: div_, context: context }).done(function( data ) { alert("添加到数据库成功"); }); }; //模糊查询方法 function queryByContext(){ var url = "testController/queryAllDataByContext"; $.ajax({ type: 'POST', url: url, data:{context:$("#context").val()}, dataType: 'json', success: function(data){ alert("数据库查询成功"); console.log(data); for(var i=0;i<data.length;i++){ var id = data[i].id; var divId = data[i].divId; var context = data[i].context; var dtt = data[i].dtt; //alert(id); $("#tab thead").append("<tr><td>"+id+"</td>"+"<td>"+divId+"</td>"+"<td>"+context+"</td>"+"<td>"+dtt+"</td>"+"<td><a class='del'onclick='del("+id+")'>删除</a></td></tr>"); } }, error:function(){ alert("数据库查询失败"); } }); }; //查询全部方法 function query(){ var url = "testController/queryAllData"; $.ajax({ type: 'POST', url: url, dataType: 'json', success: function(data){ alert("查询成功"); con
yaohong
2019/09/11
3.3K0
python测试开发django-166.jQuery 使用append()动态添加div元素
在页面上动态添加div元素,比如用户在添加多个银行卡的时候,可以动态添加和删除div元素
上海-悠悠
2021/11/16
2.1K0
jquery插件treetable 动态加载问题
在增加或修改后,动态加载html,开始就直接使用 $(“#treeTable tbody”).empty().append(data); 这个用法是错误的,
全栈程序员站长
2022/09/01
2.7K0
jquery validate动态添加/删除规则
项目中用到了jquery vilidate插件来校验,使用中遇到点小波折,这里跟大家分享一下,希望大家少走一些弯路。很多使用手册里面都会提到最基本的validate()方法,这个在使用时一般不会出现问题,如果有些小伙伴不想输入完成后立即校验可以通过设置下面这几个属性:
johnhuster的分享
2022/03/28
1.9K0
Flex动态加载svg图片
在FLEX应用程序中可以使用SVG资源, 但只能象JPG和GIF那样作为一种图像引入, 而不包括SVG的一些高级特性, 而且无法在运行时加载, 只能在编译时静态加载,所以图片的大小无法改变。
一笠风雨任生平
2019/08/02
1.1K0
延迟加载图片的jQuery插件-Lazy Load Plugin for JQuery
Lazy Load是一个用Javascript写得jQuery插件。它可以使一个长网页中,不在当前视图中的图片延迟加载,以提高页面的载入速度。
EltonZheng
2021/01/26
3.7K0
基于jQuery,图片加载loading加载层动画开源库
ProgressBar.js是一款jQuery图片加载loading加载层动画开源插件库。该插件库在图片加载时,为图片添加垂直的图片逐渐显示效果,非常炫酷。
用户5997198
2019/09/10
1.9K0
基于jQuery,图片加载loading加载层动画开源库
js 动态生成div 并添加class id 原
(adsbygoogle = window.adsbygoogle || []).push({});
tianyawhl
2019/04/04
15.1K0
vb添加GIF动态图片
众说周知,GIF格式动画文件具有小巧、制作方便等特点,因此在网上得到广泛应用,在vb的picturebox和image控件添加图片后变成静止的了,这给我们设计VB应用程序带来了不便。原来以为实现起来特别的麻烦,又要注册控件,还得添加部件。通过学习方法特别很多,而且并没有多麻烦:
程序猿小亮
2021/01/29
1.2K0
原生JS动态添加、删除元素&内容
创建元素 createElement ,创建内容 createTextNode ,添加元素 appendChild
德顺
2019/11/13
27.5K0
实现图片懒加载jquery.scrollLoading.js
记录一下吧,省得那天忘记了还得去搜百度顺便分享给大家很简单的方法。 首先需要jquery.min.js插件,我用的是jQuery v2.1.3,大家可以去百度搜很多自己引入全局顶部即可,当然你的程序自带就不需要在引用JQ了。
用户8099761
2023/05/11
2.2K0
实现图片懒加载jquery.scrollLoading.js
延迟加载图片的 jQuery 插件:Lazy Load
网站的速度非常重要,现在有很多网站优化的工具,如 Google 的 Page Speed,Yahoo 的 YSlow,对于网页图片,Yahoo 还提供 Smush.it 这个工具对图片进行批量压缩,但是对于图片非常多的网站,载入网页还是需要比较长的时间,这个时候我们可以使用 Lazy Load 这个 jQuery 插件来延迟加载图片。
Denis
2023/04/15
1.9K0
jQuery动态加载select下拉列表「建议收藏」
  以前使用的select下拉列表都是静态的,select 的option数据都是写死的。现在项目中的select需要根据不同的场景使用不同的数据,解决方式就是动态加载option数据。
Java架构师必看
2022/03/14
4.6K0
JQuery Div scrollTop ScrollHeight
jQuery 里和滚动条有关的概念很多,但是有三个属性和滚动条的拖动有关,就是:scrollTop、scrollLeft、scrollHeight。其中 scrollHeight 属性,互联网上几乎搜素不到关于它的应用技巧,而我正好需要用到它。
全栈程序员站长
2022/09/15
2.8K0
jquery 动态添加一行数据,支持动态删除
<tr id="templateTr" style="display: none;"> <td>联系人</td> <td><input type="text" name="conName" disabled="disabled" style="border: 0; background: #fff;box-shadow: none;cursor:text;" class="form-control" ></td> <td>部门</td> <td><input type="text" name="conDepart" disabled="disabled" style="border: 0; background: #fff;box-shadow: none;cursor:text;" class="form-control" ></td> <td>联系电话</td> <td><input type="text" name="conTel" disabled="disabled" style="border: 0; background: #fff;box-shadow: none;cursor:text;" class="form-control" ></td> <td>邮箱</td> <td><input type="text" name="conEmail" disabled="disabled" style="border: 0; background: #fff;box-shadow: none;cursor:text;" class="form-control" ></td> <td><button type="button" class="button2 delrow">删除</button></td> </tr>
用户5640963
2019/07/25
2.7K0

相似问题

在使用Jquery加载新内容之前淡入div

16

使用jquery在加载内容之前添加图像

25

在加载动态php内容之前运行Jquery/Ajax

23

用jQuery动态生成div无法加载图片

12

jquery ajax -在点击之后但内容加载之前显示加载div?

31
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文