文本内容自动回滚 【js读书笔记】

 1 <!DOCTYPE html>
 2 <html>
 3     <head>
 4         <meta charset="UTF-8">
 5         <title>文本内容自动回滚</title>
 6     </head>
 7
 8     <body>
 9         <h2>文本框中的文字自动回滚效果</h2>
10         <div id="rollContent" data-rwidth="100" data-rheight="100" class="roll_content">
11             aaaaaaaaaaa
12             bbbbbbbbbbb
13             ccccccccccc
14             ddddddddddd
15             eeeeeeeeeee
16             fffffffffff
17             ggggggggggg
18             rrrrrrrrrrr
19             ttttttttttt
20             wwwwwwwwwww
21         </div>
22         <script type="text/javascript">
23             window.onload=function(){
24                 var _rollContent=document.getElementById("rollContent"),
25                     _div=_rollContent.innerHTML;
26
27                 var setCss=function(_this,cssOption){//设置样式
28                         //检测节点类型
29                         if(!_this||_this.nodeType===3||_this.nodeType===8||!_this.style){
30                                 return console.log("bug");
31                         }
32                         for(var cs in cssOption){//遍历样式
33                             _this.style[cs]=cssOption[cs];
34                         }
35                         return _this;
36
37                     };
38
39                 _rollContent.innerHTML="<div id=‘rollContent_roll‘>"+_div+"</div>";
40
41                 setCss(_rollContent,{
42                     "position":"relative",
43                     "overflow":"hidden",
44                     "wordWrap":"break-word",
45                     "wordBreak":"break-all",
46                     "width":_rollContent.getAttribute("data-rwidth")+"px",
47                     "height":_rollContent.getAttribute("data-rheight")+"px",
48                     "border":"2px solid red"
49                 });
50
51                 var _timeRoll=document.getElementById("rollContent_roll");
52                 var _h=_timeRoll.offsetHeight;
53
54                 timeoutRoll=function(){//修改top值
55                     var _h=_timeRoll.offsetHeight,
56                         _t=parseInt(_timeRoll.style.top,10);
57                         //是否将top设置为0
58                     var _tt=_h>Math.abs(_t)||_t>=0?_t-10:(_h||0);
59                     setCss(_timeRoll,{
60                         "top":_tt+"px",
61                         "border":"1px solid blue"
62                     });
63                     setTimeout(timeoutRoll,200);//设置定时器
64                 };
65                 //判断滚动高度是否大于data-rheight
66                 if(_h>_rollContent.getAttribute("data-rheight")){
67                     timeoutRoll();
68                     setCss(_timeRoll,{
69                         "position":"relative",
70                         "top":"0px"
71                     });
72                 }
73
74             };
75         </script>
76     </body>
77 </html>
时间: 2024-10-23 01:21:51

文本内容自动回滚 【js读书笔记】的相关文章

You don&#39;t know JS 读书笔记(一)

前言 这里记录着自己阅读You don't know JS系列丛书的一些心得体会,也算是自己对JavaScript知识的一个总结吧. 高能预警:文章较长且琐碎,请自备板凳瓜子- Types(类型) Variables don’t have types, but the values in them do. 这句话的意思是说:变量是没有类型的,变量里面存的值才是有类型的.比如我声明一个变量var a;,此时a是不具有任何类型信息的.如果我给a赋值一个字符串a = "Hello, World&quo

SQL Server事务执行一半出错是否自动回滚整个事务 【转】

http://www.2cto.com/database/201308/234728.html SQL Server事务执行一半出错是否自动回滚整个事务 大家都知道SQL Server事务是单个的工作单元.如果某一事务成功,则在该事务中进行的所有数据修改均会提交,成为数据库中的永久组成部分.如果事务遇到错误且必须取消或回滚,则所有数据修改均被清除. 所以是不是说事务出错一定会回滚整个事物呢? 先看几个个例子: --createtable create table testrollback(idi

DDL, DML不是所有SQL都是可以自动回滚的

因为DDL没有事务性,所以DDL不能回滚. 要实现自动回滚.(begin,commit,rollback),则SQL语句中只能包括DML. 这样,自动化发布就会受限规范格式. 故而,一刀切的办法是,假定所有SQL不支持事务,自已定义好ROLLBACK的SQL脚本,在出错时能用代码回滚, 而不是依赖于数据库本身的功能. ======================== DDL和DML DDL (Data Definition Language 数据定义语言) create table 创建表 al

深入浅出Node js 读书笔记 思维导图

最近在研究node,发现是很不错的技术~ 考虑到平时看书转换率不高.遂尝试使用思维导图的方式来对一本书进行分析.感觉如果看完之后能够做个思维导图,对整本书的理解都会提高呢~ 下面第一部分介绍思维导图的做法,第二部分为我看深入浅出Nodejs的读书笔记. PART1 如何在阅读时做思维导图: 简单归纳起来,对一本书做思维导图的技巧主要分为两类:准备及应用.在以下各篇中,共有8个阶段.为方便查找起见,各阶段总结如下,都附有推荐的限制时间. 准备: 1.浏览——制作一个中央图象(10分钟) 2.设定时

设置UILabel可变高度(根据文本内容自动适应高度)

@property(nonatomic)UILabel *showLabel; // 计算文本所占高度,计算出来之后设置label的高度 // 第一个参数:字体大小,字体大小/样式影响计算字体的高度 // 第二个参数:CGSize结构体,结构体中第一个参数表示宽度,宽度的设置影响计算文本的高度,很明显越宽,高度越小:结构体中第二个参数表示最大能有多高,比如我们写为100,那么即使文本高度计算出来是200, 这个方法也会返回100, 所以一般情况下我们把它写为MAXFLOAT, 表示能有多高返回多

了不起的Node.js读书笔记

原文摘自我的前端博客,欢迎大家来访问 http://www.hacke2.cn 第二章 Js概览 基于GoogleV8引擎 Object.keys(o) 数组方法:遍历forEach.过滤filter.改变map 实现了String.prototype.trim() 含有JSON解析 第三章 阻塞与非阻塞IO 单线程注意点 小心处理内存中的变量,可能会影响两次访问的结果 不要编写阻塞式代码,可能会影响第二次访问的时间 事件轮训 先注册事件 不断询问这些事件是否已经分发dispatch 当事件分发

JS读书笔记:《JavaScript框架设计》——第12章 异步处理

一.何为异步   执行任务的过程可以被分为发起和执行两个部分. 同步执行模式:任务发起后必须等待直到任务执行完成并返回结果后,才会执行下一个任务. 异步执行模式:任务发起后不等待任务执行完成,而是马上执行下一个任务,当任务执行完成时则会收到通知. 面对IO操作频繁的场景,异步执行模式可在同等的硬件资源条件下提供更大的并发处理能力,也就是更大的吞吐量. 但由于异步执行模式打破人们固有的思维方式,并且任务的发起和任务的执行是分离的,从而提高编程的复杂度. 多线程.多进程均可实现异步模式. 二.从回调

编写可维护性的js读书笔记

第一部分:格式要求 1. 4个空格缩进. 2. 行的长度不要超过80个字符, 3. 语句超过的换行4个空格缩进(2个缩进)记住标点符号处不能换到下一行, 4. 定义变量换行则换至等号后 5. 添加适当的空行 * for if每个流控制语句之前 * 单行多行注释 * 方法之间 * 方法中局部变量与第一条语句 * 方法中逻辑片段添加空行,提高可读性 6. 命名 * 变量以名词命名 * 函数小驼峰命名,以动词开头,常见的动词约定 * 常量用大写命名,分割用 _ (下划线) * 构造函数已大驼峰命名 7

require.js读书笔记 2.usage

REQUIREJS API This is the RequireJS 2.0 API. If you want 1.0: Link to 1.0. Usage§§ 1-1.3 Load JavaScript Files  § 1.1 data-main Entry Point§ 1.2 Define a Module§ 1.3 Simple Name/Value Pairs§ 1.3.1 Definition Functions§ 1.3.2 Definition Functions with