angular.js ng-repeat渲染时出现闪烁问题解决
当我们前端运用到angular.js框架时,想必大家都会遇到一些坑。其中,我也来分享一个常见的angular.js渲染时出现的坑。
当我们进行页面渲染时,绑定表达式最开始会用{{data.name}}这种类型,但是这样绑定时遇到网速不好的时候,页面加载会先看到{{data.name}}这个表达式,给用户的体验极其不好。
这个解决方法就是用ng-cloak或者ng-bind来绑定,就解决了这个问题。然而,当遇上循环,ng-repeat的时候,问题就出现了,解决办法如下:
1.不能够给循环节点直接加上display:none样式;
2.前提我们要知道angular js 的 ng-show是通过给节点增加class ng-hide 隐藏div的,当符合ng-show条件时移除class ng-hide,如果你给节点加了display:none;那么此时div仍然是隐藏,所以你开始的时候就给节点加上class='ng-hide',就行了
3.不过ng-hide 的style 其实也是angular.min.js加载完后添加到head里的,所以如果你担心用户网速慢,导致js加载慢,依然有延迟的话,把下面这段代码添加到你的公告css样式里去。
@charset "UTF-8";[ng\:cloak],[ng-cloak],[data-ng-cloak],[x-ng-cloak],.ng-cloak,.x-ng-cloak,.ng-hide:not(.ng-hide-animate){display:none !important;}ng\:form{display:block;}
注:使用循环ng-repeat的地方也要加上ng-cloak
<div class="main">
<ul>
<li ng-cloak ng-repeat="data in newlist">
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
</li>
</ul>
</div>
angular.js ng-repeat渲染时出现闪烁问题解决的更多相关文章
- Atitit.angular.js 使用最佳实践 原理与常见问题解决与列表显示案例 attilax总结
Atitit.angular.js 使用最佳实践 原理与常见问题解决与列表显示案例 attilax总结 1. 本文范围 1 2. Angular的优点 1 2.1. 双向数据绑定 1 2.2. dsl ...
- Angular.js中处理页面闪烁的方法详解
Angular.js中处理页面闪烁的方法详解 前言 大家在使用{{}}绑定数据的时候,页面加载会出现满屏尽是{{xxx}}的情况.数据还没响应,但页面已经渲染了.这是因为浏览器和angularjs渲染 ...
- 在Angular.js中的H5页面调用Web api时跨域问题处理
/// <summary> /// 被请求时 /// 在Angular.js中的H5页面调用Web api时跨域问题处理 /// </summary> /// <para ...
- angular.js 渲染
angular.js 小常识 具体看代码,转载请备注来源. html结构 <%@ page language="java" contentType="text/ ...
- Angular js 双向绑定时字符串的转换成 数字类型的问题
问题: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <scrip ...
- (翻译)Angular.js为什么如此火呢?
在本文中让我们来逐步发掘angular为什么如此火: Angular.js 是一个MV*(Model-View-Whatever,不管是MVC或者MVVM,统归MDV(model Drive View ...
- Angular.js为什么如此火呢?
在本文中让我们来逐步发掘angular为什么如此火: Angular.js 是一个MV*(Model-View-Whatever,不管是MVC或者MVVM,统归MDV(model Drive View ...
- Angular.js之指令学习笔记
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"& ...
- angular.js基础
内置指令 所有的内置指令的前缀都为ng,不建议自定义指令使用该前缀,以免冲突.首先从一些常见的内置指令开始.先列出一些关键的内置指令,顺便简单说说作用域的问题. ng-model 将表单控件和当前作用 ...
随机推荐
- Android网络下载图片
package net.learn2develop.Networking; import android.app.Activity; import android.os.Bundle; import ...
- 前端魔法堂:屏蔽Backspace导致页面回退
前言 前几天用户反映在录入资料时一不小心错按Backspace键,就会直接回退到是一个页面,导致之前辛辛苦苦录入的资料全部丢失了.哦?居然还有这种情况.下面我们来一起探讨一下吧! Windows系统 ...
- SparkMLlib学习之线性回归
SparkMLlib学习之线性回归 (一)回归的概念 1,回归与分类的区别 分类模型处理表示类别的离散变量,而回归模型则处理可以取任意实数的目标变量.但是二者基本的原则类似,都是通过确定一个模型,将输 ...
- Openstack虚拟机在线迁移(Live Migration)
Openstack VM live migration can have 3 categories: -Block live migration without shared storage -Sha ...
- IIS无法启动,应用程序池自动关闭,应用程序池XXXX将被自动禁用 解决方案之一
最近,新任职的公司有一台测试服务(Windows Server 2008 R2 + IIS6.1)器因突然停电,造成了意外“损伤”.来电后再次开机,发现IIS里大部分的网站均打不开.均为如下(图01) ...
- java模拟报文
为了以后节约时间,记录下模拟报文的实现 模拟报文思路:就是后台把接口数据先写在文档里面写死,接口地址不变,在每个接口里面控制是访问的模拟报文还是数据库里面的数据, 对于前端来说所有都是不变的,就是说我 ...
- Docker-compose实战——Django+PostgreSQL
今天我们来用docker-compose 快速安装一个Django+PostgreSQL的开发环境. Compose简介 Compose 定位是“defining and running comple ...
- angular路由最基本的实例---简单易懂
<!DOCTYPE html> <html lang="en" ng-app="myapp"> <head> <met ...
- Java(17)异常
一.异常 1.1程序执行过程中出现的影响程序运行正常运行的现象. 1.2异常语法 try{ //代码块 }catch(异常类型 e){ }catch(异常类型 e){ }...{ }finally{ ...
- Bash中单引号和双引号的区别
单引号和双引号的区别 单引号:必须成对使用,它可以保护所有的字符不被翻译.如变量$1,和奇数个单引号的作用相同,偶数个单引号=1个双引号双引号:必须成对出现,它可以保护一些元字符不被翻译,但允许变量和 ...