随机大小图片居底居中显示

垃圾文章凑合着看很一般还不错精品 (1 人作出评论, 评价为: 5)
Loading ... Loading ...

做图片展示的时候用到过这类效果,但是没有用CSS写出来效果。今天突然想起来淘宝UED考试题里的一道题目是居底,居中。看了下代码,做了下修改就实现了我想要的结果。SNAKE同学用的是用另一种实现手段。
我改的:

  1. < !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta name="Robots" content="index,follow">
  5. </meta><meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  6. </meta><meta name="keywords" content="">
  7. </meta><meta name="description" content="">
  8. <style>
  9. <!--
  10. .box { width:500px; height:500px; border: 1px solid #CCC; display: table-cell; *display: block; *font-size: 175px; vertical-align:bottom; text-align:center;}
  11. .box img{ vertical-align:bottom; }
  12. -->
  13. </style>
  14. <title></title>
  15. </meta></head>
  16.  
  17. <body>
  18. <div class="box"><img src="http://www.cnblogs.com/images/cnblogs_com/justinyoung/myPic/photo2006.jpg" style="width:100px;height:100px;" /></div>
  19. <div class="box"><img src="http://www.cnblogs.com/images/cnblogs_com/justinyoung/myPic/photo2006.jpg" style="width:150px;height:150px;" /></div>
  20. <div class="box"><img src="http://www.cnblogs.com/images/cnblogs_com/justinyoung/myPic/photo2006.jpg" style="width:10px;height:100px;" /></div>
  21. <div class="box"><img src="http://www.cnblogs.com/images/cnblogs_com/justinyoung/myPic/photo2006.jpg" style="width:100px;height:10px;" /></div>
  22. <div class="box"><img src="http://www.cnblogs.com/images/cnblogs_com/justinyoung/myPic/photo2006.jpg" style="width:50px;height:60px;" /></div>
  23. </body>
  24. </html>

SNAKE同学的
点击查看全文 »

可乐发表于:05-28-08

js控制下拉框里超过文字变成省略号

垃圾文章凑合着看很一般还不错精品 (暂时没有评价)
Loading ... Loading ...

我们先建个测试页面,看看加长效果是如何的

效果图:

  1. < !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=gb1231" />
  5. <title>测试</title>
  6. </head>
  7. <body>
  8.     <select id="a">
  9.         <option>下拉框里的字太多了,下拉框会变长,然后把版面挤乱了,多余的如何显示成省略号?</option>
  10.         <option>或者限制住下拉框的跨度也行?</option>
  11.         <option>style="width:100px;"</option>
  12.         <option>这种已经试过了,没用!</option>
  13.     </select>
  14. </body>
  15. </html>

这么长肯定会影响到布局的,那么改怎么办呢?
点击查看全文 »

可乐发表于:05-27-08

如何制作google个性首页的可拖拽效果

垃圾文章凑合着看很一般还不错精品 (1 人作出评论, 评价为: 5)
Loading ... Loading ...

因为做东西要用到这个东西了,所以研究了下到底是怎么回事~以下代码是别人写的。

点我下载实例

?View Code JAVASCRIPT
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
//  工具类,使用Util的命名空间,方便管理
var  Util  =   new  Object();
// 获取http header里面的UserAgent,浏览器信息
Util.getUserAgent  =  navigator.userAgent;
// 是否是Gecko核心的Browser,比如Mozila、Firefox
Util.isGecko  =  Util.getUserAgent.indexOf( " Gecko " )  !=   - 1 ;
// 是否是Opera
Util.isOpera  =  Util.getUserAgent.indexOf( " Opera " )  !=   - 1 ;
// 获取一个element的offset信息,其实就是相对于Body的padding以内的绝对坐标
// 后面一个参数如果是true则获取offsetLeft,false则是offsetTop
// 关于offset、style、client等坐标的定义参考dindin的这个帖子:http://www.jroller.com/page/dindin/?anchor=pro_javascript_12
Util.getOffset  =   function  (el, isLeft) {
     var  retValue  =   0 ;
     while  (el  !=   null ) {
        retValue  +=  el[ " offset "   +  (isLeft  ?   " Left "  :  " Top " )];
        el  =  el.offsetParent;
    }
     return  retValue;
};
// 将一个function(参数中的funcName是这个fuction的名字)绑定到一个element上,并且以这个element的上下文运行,其实是一种继承,这个可以google些文章看看
Util.bindFunction  =   function  (el, fucName) {
     return   function  () {
         return  el[fucName].apply(el, arguments);
    };
};
// 重新计算所有的可以拖拽的element的坐标,对同一个column下面的可拖拽图层重新计算它们的高度而得出新的坐标,防止遮叠
// 计算出来的坐标记录在pagePosLeft和pagePosTop两个属性里面
Util.re_calcOff  =   function  (el) {
     for  ( var  i  =   0 ; i  < Util.dragArray.length; i ++ ) {
         var  ele  =  Util.dragArray[i];
        ele.elm.pagePosLeft  =  Util.getOffset(ele.elm,  true );
        ele.elm.pagePosTop  =  Util.getOffset(ele.elm,  false );
    }
     var  nextSib  =  el.elm.nextSibling;
     while  (nextSib) {
        nextSib.pagePosTop  -=  el.elm.offsetHeight;
        nextSib  =  nextSib.nextSibling;
    }
};
 
// 隐藏Google Ig中间那个table,也就是拖拽的容器,配合show一般就是刷新用,解决一些浏览器的怪癖
Util.hide  =   function  () {
    Util.rootElement.style.display  =   " none " ;
};
// 显示Google Ig中间那个table,解释同上
Util.show  =   function  () {
    Util.rootElement.style.display  =   "" ;
};
 
// 移动时显示的占位虚线框
ghostElement  =   null ;
// 获取这个虚线框,通过dom动态生成
getGhostElement  =   function  () {
     if  ( ! ghostElement) {
        ghostElement  =  document.createElement( " DIV " );
        ghostElement.className  =   " modbox " ;
        ghostElement.backgroundColor  =   "" ;
        ghostElement.style.border  =   " 2px dashed #aaa " ;
        ghostElement.innerHTML  =   " &nbsp; " ;
    }
     return  ghostElement;
};
 
// 初始化可以拖拽的Element的函数,与拖拽无关的我去掉了
function  draggable(el) {
     // 公用的开始拖拽的函数
     this ._dragStart  =  start_Drag;
     // 公用的正在拖拽的函数
     this ._drag  =  when_Drag;
     // 公用的拖拽结束的函数
     this ._dragEnd  =  end_Drag;
     // 这个函数主要用来进行拖拽结束后的dom处理
     this ._afterDrag  =  after_Drag;
     // 是否正在被拖动,一开始当然没有被拖动
     this .isDragging  =   false ;
     // 将这个Element的this指针注册在elm这个变量里面,方便在自己的上下文以外调用自己的函数等,很常用的方法
     this .elm  =  el;
     // 触发拖拽的Element,在这里就是这个div上显示标题的那个div
     this .header  =  document.getElementById(el.id  +   " _h " );
     // 对于有iframe的element拖拽不同,这里检测一下并记录
     this .hasIFrame  =   this .elm.getElementsByTagName( " IFRAME " ).length  >   0 ;
     // 如果找到了header就绑定drag相关的event
     if  ( this .header) {
         // 拖拽时的叉子鼠标指针
         this .header.style.cursor  =   " move " ;
         // 将函数绑定到header和element的this上,参照那个函数的说明
        Drag.init( this .header,  this .elm);
         // 下面三个语句将写好的三个函数绑定给这个elemnt的三个函数钩子上,也就实现了element从draggable继承可拖拽的函数
         this .elm.onDragStart  =  Util.bindFunction( this ,  " _dragStart " );
         this .elm.onDrag  =  Util.bindFunction( this ,  " _drag " );
         this .elm.onDragEnd  =  Util.bindFunction( this ,  " _dragEnd " );
    }
};
 
// 下面就是draggable里面用到的那4个function
// 公用的开始拖拽的函数
function  start_Drag() {
     // 重置坐标,实现拖拽以后自己的位置马上会被填充的效果
    Util.re_calcOff( this );
     // 记录原先的邻居节点,用来对比是否被移动到新的位置
     this .origNextSibling  =   this .elm.nextSibling;
     // 获取移动的时候那个灰色的虚线框
     var  _ghostElement  =  getGhostElement();
     // 获取正在移动的这个对象的高度
     var  offH  =   this .elm.offsetHeight;
     if  (Util.isGecko) {
         // 修正gecko引擎的怪癖吧
        offH  -=  parseInt(_ghostElement.style.borderTopWidth)  *   2 ;
    }
     // 获取正在移动的这个对象的宽度
     var  offW  =   this .elm.offsetWidth;
     // 获取left和top的坐标
     var  offLeft  =  Util.getOffset( this .elm,  true );
     var  offTop  =  Util.getOffset( this .elm,  false );
     // 防止闪烁,现隐藏
    Util.hide();
     // 将自己的宽度记录在style属性里面
     this .elm.style.width  =  offW  +   " px " ;
     // 将那个灰框设定得与正在拖动的对象一样高,比较形象
    _ghostElement.style.height  =  offH  +   " px " ;
     // 把灰框放到这个对象原先的位置上
     this .elm.parentNode.insertBefore(_ghostElement,  this .elm.nextSibling);
     // 由于要拖动必须将被拖动的对象从原先的盒子模型里面抽出来,所以设定position为absolute,这个可以参考一下css布局方面的知识
     this .elm.style.position  =   " absolute " ;
     // 设置zIndex,让它处在最前面一层,当然其实zIndex=100是让它很靠前,如果页面里有zIndex>100的,那……
     this .elm.style.zIndex  =   100 ;
     // 由于position=absolute了,所以left和top实现绝对坐标定位,这就是先前计算坐标的作用,不让这个模型乱跑,要从开始拖动的地方开始移动
     this .elm.style.left  =  offLeft  +   " px " ;
     this .elm.style.top  =  offTop  +   " px " ;
     // 坐标设定完毕,可以显示了,这样就不会闪烁了
    Util.show();
     // 这里本来有个ig_d.G,没搞明白干什么用的,不过没有也可以用,谁知道麻烦告诉我一声,不好意思
     // 还没有开始拖拽,这里做个记号
     this .isDragging  =   false ;
     return   false ;
};
// 在拖拽时的相应函数,由于绑定到鼠标的move这个event上,所以会传入鼠标的坐标clientX, clientY
function  when_Drag(clientX, clientY) {
     // 刚开始拖拽的时候将图层变透明,并标记为正在被拖拽
     if  ( ! this .isDragging) {
         this .elm.style.filter  =   " alpha(opacity=70) " ;
         this .elm.style.opacity  =   0.7 ;
         this .isDragging  =   true ;
    }
     // 被拖拽到的新的column(当然也可以是原来那个)
     var  found  =   null ;
     // 最大的距离,可能是防止溢出或者什么bug
     var  max_distance  =   100000000 ;
     // 遍历所有的可拖拽的element,寻找离当前鼠标坐标最近的那个可拖拽元素,以便后面插入
     for  ( var  i  =   0 ; i  < Util.dragArray.length; i ++ ) {
         var  ele  =  Util.dragArray[i];
         // 利用勾股定理计算鼠标到遍历到的这个元素的距离
         var  distance  =  Math.sqrt(Math.pow(clientX  -  ele.elm.pagePosLeft,  2 )  +  Math.pow(clientY  -  ele.elm.pagePosTop,  2 ));
         // 自己已经浮动了,所以不计算自己的
         if  (ele  ==   this ) {
             continue ;
        }
         // 如果计算失败继续循环
         if  (isNaN(distance)) {
             continue ;
        }
         // 如果更小,记录下这个距离,并将它作为found
         if  (distance  <  max_distance) {
            max_distance  =  distance;
            found  =  ele;
        }
    }
     // 准备让灰框落脚
     var  _ghostElement  =  getGhostElement();
     // 如果找到了另外的落脚点
     if  (found  !=   null   &&  _ghostElement.nextSibling  !=  found.elm) {
         // 找到落脚点就先把灰框插进去,这就是我们看到的那个灰框停靠的特效,有点像吸附的感觉,哈哈
        found.elm.parentNode.insertBefore(_ghostElement, found.elm);
         if  (Util.isOpera) {
             // Opera的现实问题,要隐藏/显示后才能刷新出变化
            document.body.style.display  =   " none " ;
            document.body.style.display  =   "" ;
        }
    }
};
// 拖拽完毕
function  end_Drag() {
     // 拖拽完毕后执行后面的钩子,执行after_Drag(),如果布局发生了变动了就记录到远程服务器,保存你拖拽后新的布局顺序
     if  ( this ._afterDrag()) {
         // remote call to save the change
    }
     return   true ;
};
// 拖拽后的执行钩子
function  after_Drag() {
     var  returnValue  =   false ;
     // 防止闪烁
    Util.hide();
     // 把拖拽时的position=absolute和相关的那些style都消除
     this .elm.style.position  =   "" ;
     this .elm.style.width  =   "" ;
     this .elm.style.zIndex  =   "" ;
     this .elm.style.filter  =   "" ;
     this .elm.style.opacity  =   "" ;
     // 获取灰框
     var  ele  =  getGhostElement();
     // 如果现在的邻居不是原来的邻居了
     if  (ele.nextSibling  !=   this .origNextSibling) {
         // 把被拖拽的这个节点插到灰框的前面
        ele.parentNode.insertBefore( this .elm, ele.nextSibling);
         // 标明被拖拽了新的地方
        returnValue  =   true ;
    }
     // 移除灰框,这是这个灰框的生命周期应该就结束了
    ele.parentNode.removeChild(ele);
     // 修改完毕,显示
    Util.show();
     if  (Util.isOpera) {
         // Opera的现实问题,要隐藏/显示后才能刷新出变化
        document.body.style.display  =   " none " ;
        document.body.style.display  =   "" ;
    }
     return  returnValue;
};
// 可拖拽Element的原形,用来将event绑定到各个钩子,这部分市比较通用的,netvibes也是基本完全相同的实现
// 这部分推荐看dindin的这个,也会帮助理解,http://www.jroller.com/page/dindin/?anchor=pro_javascript_12
var  Drag  =  {
     // 对这个element的引用,一次只能拖拽一个Element
    obj: null , 
     // element是被拖拽的对象的引用,elementHeader就是鼠标可以拖拽的区域
    init: function  (elementHeader, element) {
         // 将start绑定到onmousedown事件,按下鼠标触发start
        elementHeader.onmousedown  =  Drag.start;
         // 将element存到header的obj里面,方便header拖拽的时候引用
        elementHeader.obj  =  element;
         // 初始化绝对的坐标,因为不是position=absolute所以不会起什么作用,但是防止后面onDrag的时候parse出错了
         if  (isNaN(parseInt(element.style.left))) {
            element.style.left  =   " 0px " ;
        }
         if  (isNaN(parseInt(element.style.top))) {
            element.style.top  =   " 0px " ;
        }
         // 挂上空Function,初始化这几个成员,在Drag.init被调用后才帮定到实际的函数,可以参照draggable里面的内容
        element.onDragStart  =   new  Function();
        element.onDragEnd  =   new  Function();
        element.onDrag  =   new  Function();
    },
     // 开始拖拽的绑定,绑定到鼠标的移动的event上
    start: function  (event) {
         var  element  =  Drag.obj  =   this .obj;
         // 解决不同浏览器的event模型不同的问题
        event  =  Drag.fixE(event);
         // 看看是不是左键点击
         if  (event.which  !=   1 ) {
             // 除了左键都不起作用
             return   true ;
        }
         // 参照这个函数的解释,挂上开始拖拽的钩子
        element.onDragStart();
         // 记录鼠标坐标
        element.lastMouseX  =  event.clientX;
        element.lastMouseY  =  event.clientY;
         // 将Global的event绑定到被拖动的element上面来
        document.onmouseup  =  Drag.end;
        document.onmousemove  =  Drag.drag;
         return   false ;
    }, 
     // Element正在被拖动的函数
    drag: function  (event) {
         // 解决不同浏览器的event模型不同的问题
        event  =  Drag.fixE(event);
         // 看看是不是左键点击
         if  (event.which  ==   0 ) {
             // 除了左键都不起作用
             return  Drag.end();
        }
         // 正在被拖动的Element
         var  element  =  Drag.obj;
         // 鼠标坐标
         var  _clientX  =  event.clientY;
         var  _clientY  =  event.clientX;
         // 如果鼠标没动就什么都不作
         if  (element.lastMouseX  ==  _clientY  &&  element.lastMouseY  ==  _clientX) {
             return   false ;
        }
         // 刚才Element的坐标
         var  _lastX  =  parseInt(element.style.top);
         var  _lastY  =  parseInt(element.style.left);
         // 新的坐标
         var  newX, newY;
         // 计算新的坐标:原先的坐标+鼠标移动的值差
        newX  =  _lastY  +  _clientY  -  element.lastMouseX;
        newY  =  _lastX  +  _clientX  -  element.lastMouseY;
         // 修改element的显示坐标
        element.style.left  =  newX  +   " px " ;
        element.style.top  =  newY  +   " px " ;
         // 记录element现在的坐标供下一次移动使用
        element.lastMouseX  =  _clientY;
        element.lastMouseY  =  _clientX;
         // 参照这个函数的解释,挂接上Drag时的钩子
        element.onDrag(newX, newY);
         return   false ;
    },
     // Element正在被释放的函数,停止拖拽
    end: function  (event) {
         // 解决不同浏览器的event模型不同的问题
        event  =  Drag.fixE(event);
         // 解除对Global的event的绑定
        document.onmousemove  =   null ;
        document.onmouseup  =   null ;
         // 先记录下onDragEnd的钩子,好移除obj
         var  _onDragEndFuc  =  Drag.obj.onDragEnd();
         // 拖拽完毕,obj清空
        Drag.obj  =   null ;
         return  _onDragEndFuc;
    }, 
     // 解决不同浏览器的event模型不同的问题
    fixE: function  (ig_) {
         if  ( typeof  ig_  ==   " undefined " ) {
            ig_  =  window.event;
        }
         if  ( typeof  ig_.layerX  ==   " undefined " ) {
            ig_.layerX  =  ig_.offsetX;
        }
         if  ( typeof  ig_.layerY  ==   " undefined " ) {
            ig_.layerY  =  ig_.offsetY;
        }
         if  ( typeof  ig_.which  ==   " undefined " ) {
            ig_.which  =  ig_.button;
        }
         return  ig_;
    }
};
 
 
 
// 下面是初始化的函数了,看看上面这些东西怎么被调用
var  _IG_initDrag  =   function  (el) {
     // column那个容器,在google里面就是那个table布局的tbody,netvibes用的<div>
    Util.rootElement  =  el;
     // 这个tbody的行
    Util._rows  =  Util.rootElement.tBodies[ 0 ].rows[ 0 ];
     // 列,google是3列,其实也可以更多
    Util.column  =  Util._rows.cells;
     // 用来存取可拖拽的对象
    Util.dragArray  =   new  Array();
     var  counter  =   0 ;
     for  ( var  i  =   0 ; i  < Util.column.length; i ++ ) {
         // 搜索所有的column
         var  ele  =  Util.column[i];
         for  ( var  j  =   0 ; j  <  ele.childNodes.length; j ++ ) {
             // 搜索每一column里面的所有element
             var  ele1  =  ele.childNodes[j];
             // 如果是div就把它初始化为一个draggable对象
             if  (ele1.tagName  ==   " DIV " ) {
                Util.dragArray[counter]  =   new  draggable(ele1);
                counter ++ ;
            }
        }
    }
};
 
// google的页面里可以拖动的部分的id是"t_1"
// 挂载到onload,载入完毕执行。不过实际上google没有用onload。
// 而是写在页面最下面,异曲同工吧,也许直接写在页面是种怪癖,或者也有可能是兼容性考虑。
 
// 请将下面两条被注释掉的代码加,到你自己下载的一个google ig页面里面,把里面的所有其余script删除,挂上这个js也可以拖拽了,哈哈
// _table=document.getElementById("t_1");
// window.onload = _IG_initDrag(_table);
 
// 其实看懂这些代码对学习javascript很有益,希望对大家能有帮助
可乐发表于:05-23-08

JS获取浏览器窗口大小 获取屏幕,浏览器,网页高度宽度

垃圾文章凑合着看很一般还不错精品 (3 人作出评论, 评价为: 5)
Loading ... Loading ...

网页可见区域宽:document.body.clientWidth
网页可见区域高:document.body.clientHeight
网页可见区域宽:document.body.offsetWidth (包括边线的宽)
网页可见区域高:document.body.offsetHeight (包括边线的宽)
网页正文全文宽:document.body.scrollWidth
网页正文全文高:document.body.scrollHeight
网页被卷去的高:document.body.scrollTop
网页被卷去的左:document.body.scrollLeft
网页正文部分上:window.screenTop
网页正文部分左:window.screenLeft
屏幕分辨率的高:window.screen.height
屏幕分辨率的宽:window.screen.width
屏幕可用工作区高度:window.screen.availHeight
屏幕可用工作区宽度:window.screen.availWidth

HTML精确定位:scrollLeft,scrollWidth,clientWidth,offsetWidth
scrollHeight: 获取对象的滚动高度。
scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离
scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离
scrollWidth:获取对象的滚动宽度
offsetHeight:获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度
offsetLeft:获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置
offsetTop:获取对象相对于版面或由 offsetTop 属性指定的父坐标的计算顶端位置
event.clientX 相对文档的水平座标
event.clientY 相对文档的垂直座标
event.offsetX 相对容器的水平坐标
event.offsetY 相对容器的垂直坐标
document.documentElement.scrollTop 垂直方向滚动的值
event.clientX+document.documentElement.scrollTop 相对文档的水平座标+垂直方向滚动的量

点击查看全文 »

可乐发表于:05-21-08

JS小细节

垃圾文章凑合着看很一般还不错精品 (1 人作出评论, 评价为: 4)
Loading ... Loading ...

每一项都是js中的小技巧,但十分的实用!

1.document.write(””); 输出语句

2.JS中的注释为//

3.传统的HTML文档顺序是:document->html->(head,body)

4.一个浏览器窗口中的DOM顺序是:window->(navigator,screen,history,location,document)

5.得到表单中元素的名称和值:document.getElementById(”表单中元素的ID号”).name(或value)

6.一个小写转大写的JS: document.getElementById(”output”).value = document.getElementById(”input”).value.toUpperCase();

7.JS中的值类型:String,Number,Boolean,Null,Object,Function

8.JS中的字符型转换成数值型:parseInt(),parseFloat()

9.JS中的数字转换成字符型:(””+变量)

10.JS中的取字符串长度是:(length)

11.JS中的字符与字符相连接使用+号.

12.JS中的比较操作符有:==等于,!=不等于,>,>=,< .<=

13.JS中声明变量使用:var来进行声明

14.JS中的判断语句结构:if(condition){}else{}

15.JS中的循环结构:for([initial expression];[condition];[upadte expression]) {inside loop}

16.循环中止的命令是:break

17.JS中的函数定义:function functionName([parameter],…){statement[s]}

18.当文件中出现多个form表单时.可以用document.forms[0],document.forms[1]来代替.

19.窗口:打开窗口window.open(), 关闭一个窗口:window.close(), 窗口本身:self

20.状态栏的设置:window.status=”字符”;

21.弹出提示信息:window.alert(”字符”);

22.弹出确认框:window.confirm();

23.弹出输入提示框:window.prompt();

24.指定当前显示链接的位置:window.location.href=”URL”

25.取出窗体中的所有表单的数量:document.forms.length

26.关闭文档的输出流:document.close();

27.字符串追加连接符:+=

28.创建一个文档元素:document.createElement(),document.createTextNode()

29.得到元素的方法:document.getElementById()

30.设置表单中所有文本型的成员的值为空:

var form = window.document.forms[0]
for (var i = 0; i

if (form.elements.type == “text”){
form.elements.value = “”;
}
}
点击查看全文 »

可乐发表于:05-21-08

网站灰度处理

垃圾文章凑合着看很一般还不错精品 (暂时没有评价)
Loading ... Loading ...

很多国内的网站都做了灰度处理,有很多网站是把首页的风格整体调整了,更多的是使用了下面这句CSS滤镜语句

  1. filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1);

上面这条语句只能对IE和基于IE内核的浏览器起作用,为啥?看到中间那个Microsoft了吧~

把上面这句添加到css部分的html后面就OK了

可乐发表于:05-20-08

如何实现简体繁体的转换

垃圾文章凑合着看很一般还不错精品 (1 人作出评论, 评价为: 4)
Loading ... Loading ...

意外收获吧算是,效果可以见本站左侧。

1、创建文件tw_cn.js,代码在下面,比较长

2、修改变量。拥记事本打开文件,对前几行有标注的变量进行更改;

3、上传文件tw_cn.js到网站根目录;

4、修改主题,在你想要显示简繁转换按钮的地方加上代码:

  1. <a id="translateLink">繁體</a>

5、然后在footer里加上如下代码:

  1. <script type="text/javascript"
  2. src="http://yourdomainname.com/tw_cn.js" mce_src="http://yourdomainname.com/tw_cn.js"></script>
  3. <script type="text/javascript">
  4. var defaultEncoding = 0; //默认是否繁体,0-简体,1-繁体
  5. var translateDelay = 0; //延迟时间,若不在前, 要设定延迟翻译时间, 如100表示100ms,默认为0
  6. var cookieDomain = "http://yourdomainname.com"; //Cookie地址, 一定要设定, 通常为你的网址
  7. var msgToTraditionalChinese = "繁體"; //默认切换为繁体时显示的中文字符
  8. var msgToSimplifiedChinese = "简体"; //默认切换为简体时显示的中文字符
  9. var translateButtonId = "translateLink"; //默认互换id
  10. translateInitilization();
  11. </script>

点击查看全文 »

可乐发表于:05-13-08

20个具有代表性的web2.0网站配色

垃圾文章凑合着看很一般还不错精品 (暂时没有评价)
Loading ... Loading ...

或许有那么一点点的作用吧~方便没有想法的时候拿出来用
点我查看

顺便发个原来的东西
配色网站

可乐发表于:05-04-08

外部网页调用Google Picasa网络相册的图片

垃圾文章凑合着看很一般还不错精品 (暂时没有评价)
Loading ... Loading ...

单张图片调用可以直接使用地址,假如想调用相册呢?我们该怎么办?

方案一:调用JS代码

  1. <script type="text/javascript">
  2. username="你的Picasa帐户名称";
  3. photosize="800";
  4. columns="4";
  5. </script>
  6. <script type="text/javascript" src="http://www.shiyimin.com.cn/album/pwa.js"></script>

username要更改成你自己的的Picasa相册的帐户名称,比如我的Picasa相册的地址是http://picasaweb.google.com/kele5240,那么我的Picasa帐户名称就是kele5240.
photosize控制每一张图片在显示的时候的尺寸大小,推荐使用800。
columns定义相册缩略图的列数,你可以根据网页大小定义。
点击查看全文 »

可乐发表于:04-29-08

双击左键滚屏代码

垃圾文章凑合着看很一般还不错精品 (暂时没有评价)
Loading ... Loading ...

配置站点的时候遇到一个网站有,顺手取了出来~记录方便日后使用

  1. <script language=JavaScript>
  2. //滚屏
  3. var currentpos,timer;
  4. function initialize()
  5. {timer=setInterval("scrollwindow()",50);}
  6. function sc()
  7. {clearInterval(timer);}
  8. function scrollwindow()
  9. {currentpos=document.body.scrollTop;
  10. window.scroll(0,++currentpos);
  11. if (currentpos != document.body.scrollTop)
  12. sc();}
  13. document.onmousedown=sc
  14. document.ondblclick=initialize
  15. </script>
可乐发表于:04-23-08