转一个图片未知高度,垂直居中的例子

Filed under: 交互设计 | No Comments »
Posted on

很久以来,自己也有这个疑惑,由于很久没有专职做这个了,就没有深入的研究过重构方面的东西,只是一直关注着,不曾落下。
转载记录一下,以免自己遗忘。

转自:http://www.planabc.net/2008/05/26/img_vertical_center_solution/

  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 http-equiv="Content-Type" content="text/html; charset=gb2312" />
  5. <title>Vertical Middle</title>
  6. <style>
  7. .box {
  8.     /*非IE的主流浏览器识别的垂直居中的方法*/
  9.     display: table-cell;
  10.     vertical-align:middle;
  11.  
  12.     /*设置水平居中*/
  13.     text-align:center;
  14.  
  15.     /* 针对IE的Hack */
  16.     *display: block;
  17.     *font-size: 175px;/*约为高度的0.873,200*0.873 约为175*/
  18.     *font-family:Arial;/*防止非utf-8引起的hack失效问题,如gbk编码*/
  19.  
  20.     width:200px;
  21.     height:200px;
  22.     border: 1px solid #eee;
  23. }
  24. .box img {
  25.     /*设置图片垂直居中*/
  26.     vertical-align:middle;
  27. }
  28. </style>
  29. </head>
  30.  
  31. <body>
  32. <div class="box">
  33.     <img src="http://pics.taobao.com/bao/album/promotion/taoscars_180x95_071112_sr.jpg" />
  34. </div>
  35. </body>
  36. </html>

http://listenpro.googlepages.com/demo_vertical_css.html

  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 http-equiv="Content-Type" content="text/html; charset=gb2312" />
  5. <title>Vertical Middle</title>
  6. <style>
  7. .itm{border:2px solid #ccc;width:160px;height:160px;text-align:center;}
  8. .blank{width:0;height:160px;}
  9. .itm img{vertical-align:middle;}
  10. </style>
  11. </head>
  12.  
  13. <body>
  14. <div class="itm">
  15. <img src="http://cn.yimg.com/i/comn/blank.gif" class="blank" />
  16. <a href=""><img src="http://cn.yimg.com/bookmark/yisou/mp3/m060616.jpg"/></a>
  17. </div>
  18. </body>
  19. </html>

document.getElementById(’id’).innerHTML 和 jquery的 $(’id’).html() 到底有什么区别?

Filed under: 交互设计 | No Comments »
Posted on

先来看两个例子

http://www.d5s.cn/example/js/js_object.html

http://www.d5s.cn/example/js/jquery_object.html

document.getElementById(’id’).innerHTML 和 jquery的 $(’id’).html() 到底有什么区别?

你可以分别查看两个页面的源码,就只有19和20行不同

document.getElementById(’test_player’).innerHTML = box_dom;
$(”#test_player”).html(box_dom);

都是向 test_player 节点内插入数据,但是结果却大不相同,不知道jquery是不是对 object 有特殊处理。

tinymce Simplified Chinese pack 简体中文包

Filed under: 交互设计 | 2 Comments »
Posted on

昨天从 tinymce 官方网站下载的语言包,安装后,却是繁体中文版本。

实在看着不爽,又重新转化了一下。

有需要的可以点击 tinymce Simplified Chinese pack 下载。

如果tinymce的中文字体大小显示不正常,可以搜索tinymce目录下的所有css文件中的 font-size:10px; 和 font-size:11px;

替换为 font-size:12px; 这样中文字体 宋体就能显示正常。

jquery radio取值,checkbox取值,select取值,radio选中,checkbox选中,select选中,及其相关

Filed under: 交互设计 | No Comments »
Posted on

转自:http://www.itit8.com/?p=89

获取一组radio被选中项的值
var item = $(’input[@name=items][@checked]‘).val();

获取select被选中项的文本
var item = $(”select[@name=items] option[@selected]“).text();

select下拉框的第二个元素为当前选中值
$(’#select_id’)[0].selectedIndex = 1;

radio单选组的第二个元素为当前选中值
$(’input[@name=items]‘).get(1).checked = true;

获取值

文本框,文本区域
$(”#txt”).attr(”value”);

多选框checkbox
$(”#checkbox_id”).attr(”value”);

单选组radio
$(”input[@type=radio][@checked]“).val();

下拉框select
$(’#sel’).val();

控制表单元素

文本框,文本区域

$(”#txt”).attr(”value”,”);//清空内容
$(”#txt”).attr(”value”,’11′);//填充内容

多选框checkbox

$(”#chk1″).attr(”checked”,”);//不打勾
$(”#chk2″).attr(”checked”,true);//打勾
if($(”#chk1″).attr(’checked’)==undefined) //判断是否已经打勾

单选组radio
$(”input[@type=radio]“).attr(”checked”,’2′);//设置value=2的项目为当前选中项

下拉框select

$(”#sel”).attr(”value”,’-sel3′);//设置value=-sel3的项目为当前选中项
$(”<option value=”1′&gt;1111&lt;/option&gt;&lt;option value=”></option>2222″).appendTo(”#sel”)//添加下拉框的option
$(”#sel”).empty();//清空下拉框

javascript对select的表单的常见操作[转]

Filed under: 交互设计 | No Comments »
Posted on

1 检测是否有选中

 if(objSelect.selectedIndex > -1) {
  //说明选中
 } else {
  //说明没有选中
 }

2 删除被选中的项
 objSelect.options[objSelect.selectedIndex] = null;

3 增加项
 objSelect.options[objSelect.length] = new Option(”你好”,”hello”);

4 修改所选择中的项
 objSelect.options[objSelect.selectedIndex] = new Option(”你好”,”hello”);

5 得到所选择项的文本
 objSelect.options[objSelect.selectedIndex].text;

6 得到所选择项的值
 objSelect.options[objSelect.selectedIndex].value;

转自:http://blog.csdn.net/httpnet/archive/2007/06/15/1653236.aspx

自定义javascript的去空格、去HTML函数

Filed under: 交互设计 | No Comments »
Posted on
下载: trim.php
  1. // <![CDATA[
  2.  
  3.     String.prototype.trim = function (){
  4.         var reExtraSpace = /^\s+(.*?)\s+$/;
  5.         return this.replace(reExtraSpace, "$1");
  6.     }       
  7.     String.prototype.ltrim = function (){
  8.         var reExtraSpace = /^\s+(.*?)$/;
  9.         return this.replace(reExtraSpace, "$1");
  10.     }
  11.     String.prototype.rtrim = function (){
  12.         var reExtraSpace = /^(.*?)\s+$/;
  13.         return this.replace(reExtraSpace, "$1");
  14.     }
  15.     String.prototype.strip_tags = function (){
  16.         var reTag = /<(?:.|\s)*?>/g;
  17.         return this.replace(reTag, "");
  18.     }
  19. // ]]>

jQuery技巧总结 [转]

Filed under: 交互设计 | No Comments »
Posted on

1、关于页面元素的引用

通过jquery的$()引用元素包括通过id、class、元素名以及元素的层级关系及dom或者xpath条件等方法,且返回的对象为jquery对象(集合对象),不能直接调用dom定义的方法。

2、jQuery对象与dom对象的转换

只有jquery对象才能使用jquery定义的方法。注意dom对象和jquery对象是有区别的,调用方法时要注意操作的是dom对象还是jquery对象。
普通的dom对象一般可以通过$()转换成jquery对象。
如:$(document.getElementById(”msg”))则为jquery对象,可以使用jquery的方法。
由于jquery对象本身是一个集合。所以如果jquery对象要转换为dom对象则必须取出其中的某一项,一般可通过索引取出。
如:$(”#msg”)[0],$(”div”).eq(1)[0],$(”div”).get()[1],$(”td”)[5]这些都是dom对象,可以使用dom中的方法,但不能再使用Jquery的方法。
以下几种写法都是正确的:

详情查看 »

css 背景 png 透明

Filed under: 交互设计 | No Comments »
Posted on

此实例兼容IE6、7,firefox, opera

首先要制作一个透明的PNG图片,可以直接下载此处的透明PNG图片(右键,目标另存为)。

filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true, sizingMethod=scale, src=”img/1_1.png” mce_src=”img/1_1.png”);
注意:filter滤镜中的src图片地址是相对于所执行页面的,即相对于 ie6_7_firefox_png_transparent.html 页面的地址,并不是相对于css文件的。

background:url(../img/1_1.png);_background:none;
firefox中是支持png背景透明的,所以background会生效;利用bug去掉IE6、7中的背景图片。

查看实例            下载实例

详情查看 »

jquery和prototype的比较,以及冲突解决

Filed under: 交互设计, 程序 | 4 Comments »
Posted on

初次试用jQuery,到底是prototype好还是jquery好?之前的项目已经使用了prototype,现加入jquery后,立刻罢工,搜了一下,还是有解决办法的(原文),不过最后我还是抛弃prototype,开始使用jquery了。

<script src=”prototype.js” mce_src=”prototype.js”></script>
<script src=”http://blogbeta.blueidea.com/jquery.js” mce_src=”http://blogbeta.blueidea.com/jquery.js”></script>
<script type=”text/javascript”>
      jQuery.noConflict();
</script>

注意:一定要先引入prototype.js 再引入jquery.js,先后顺序不可错。

如果先包含jQuery,将引起代码终止,作为提醒,jQuery将抛出一个异常:“You are overwriting jQuery, please include jQuery  last.”

 prototype中最方便的函数莫过于

<input id=”blueidea” value=”蓝色” type=”text” />
$(”blueidea”)   ===  document.getElementById(”blueidea”)    某id的对象

$F(”blueidea”)   ===  document.getElementById(”blueidea”).value   表单的值

如今使用jquery,这些都没有了。

$(”#id”) 这样虽然也可以获得某id的对象,但是不能对此id进行常规的js操作。(也许有方法,不过我还不会。)

例如

<input id=”blue” value=”蓝色” type=”text” />
<div id=”idea”>蓝色理想</div>

现在改为

id=”blue”的值”蓝色”改为 “经典”;
id=”idea”的节点文字”蓝色理想”改为”<b>经典论坛</b>”

prototype写法:
$(”blue”) .value=”http://blogbeta.blueidea.com/经典”;
$(”idea”).innerHTML=”<b>经典论坛</b>”;  或者
Element.update(”idea”, “<b>经典论坛</b>”);

这些都不能这么写,而要用

jquery写法:
$(”#blue”) .val(”经典”);

$(”#idea”).empty();    //先置空此元素
$(”#idea”).append(”<b>经典论坛</b>”);    //再添加新的字符串

如果你把prototype换成jquery了,但是还想使用prototype中的方便函数

建议自己定义两个函数

function $G(id){
 return document.getElementById(id);
}
function $F(id){
 return $G(id).value;
}

以前的javascript思想要改变了,用了jquery一切就要jquery的规范来,好处就是不用担心浏览器兼容性了,反正用的是jquery的函数,不兼容就是他的问题了,如果是自己随意写,就有浏览器的兼容性问题。

目前为止prototype最方便就是有chm手册,查询起来很方便,而jquery只有英文的api文档,虽然也不错,但还是期待jquery的中文chm。

分页: Prev 1 2
2,018 垃圾评论
截获自
Akismet