Monday, August 24, 2009

工作技术总结

CSS&XHTML

1. 垂直剧中和水平剧中,见总结

2. 缺少编码规范

3. IE中input type="button"或是input type="submit"中的文字不能垂直居中
    解决办法:把height设置为box的height+border*2  把line-height设置成box的height就可以了

4. IE7支持position:fixed

5. 页面中出现横向滚动条时,除去查一下是不是有元素超宽,还要检查一下是不是给html设置了overflow:auto;在IE6中会出问题

6. 在<form>标签中<button>如果不写type属性,默认为submit,这种情况如果给他注册了onclick事件,就和给form注册onsubmit是平等的,导致注册的函数在输入框中点击enter都要被调用,所以还是加上type="button"注册起来比较安全。

7. 为减少体积尽量使用PNG格式的图片

8. 遵守编码规范
    命名尽量唯一
    btn-1 btn-2这种命名方式很不好,命名要有意义

    1. 影响文档流的属性(比如:display, position, float, clear, visibility, table-layout等)
    2. 自身盒模型的属性(比如:width, height, margin, padding, border等)
    3. 排版相关属性(比如:font, line-height, text-align, text-indent, vertical-align等等)
    4. 装饰性属性(比如:color, background, opacity, cursor等)
    5. 生成内容的属性(比如:content, list-style, quotes等)

JavaScript


1. 链接点击,页面滚动
    解决办法:为链接注册 DOM level 0 onclick事件 return false  

2. 一个大框框,一个小框框,当“onmouseenter”小框框的时候改变大框框的className,当“onmouseleave”大框框的时候改变大框框的className,存在的问题是,大框框的里面的元素"onmouseout"事件会bubble到大框框上,所以给大框框注册onmouseout事件不能正确实现这个效果。
    解决办法:给大框框注册onmouseover事件,这样只有当鼠标真正移动出大元素的时候事件

    

3. IE6刷新(非强制刷新)时会恢复上次的表单状态,为window.onload注册事情,在页面元素全部加载完成的进修进行统计

4. 事件代理
    


5. 按XHTML文档顺序获取DOM节点


6. eval(JSON)时一般使用eval('('+JSON+')') 的方式,是为什么?

Prototype evalJSON:
JQuery eval xhr response:

7. 关于使用JavaScript动态改变元素样式的调研

8. var isString = function(el){
        return toString.call(el) === "[object String]";
    }
    //jQuery的实现方式,不过还是处理constructor被改变的情况  这是目前最好的方法

9. <form>的 reset 事件是IE6中是不bubble的,在Firefox3.5 中是bubble的。

10. 对于小数据量Ajax请求,尽量使用GET方式

11. 遇到问题的时候,逐步注释,缩小范围,适当的考虑后端的问题

12. JS代码使用YUI深度压缩,寻求在这样的情况下没有BUG的路线

Flash

1. 获取flash object后无法访问 flash object的方法
    原因:flash的安全机制
    解决办法:在此地址进行设置

2. 使用JS嵌入Flash类库
    暂时不研究,先使用类库

3. 使用JS获取Flash Object
    // Get the Flash movie from Window in IE and Document in others 
    var flash = window.movie || document.movie; // Get Flash object


4. 嵌入的Flash在背景设为和网页背景颜色一样的时候,在IE6中Flash的周围仍然有白边
    原因:Flash的wmode为window
    解决办法:把wmode设置为transparent

5. Flash在firefox里面无法调用函数的问题
    原因:Firefox只有在flash出现在可视区的时候才会渲染flash,渲染之后我们才可以调用这个flash的函数
    解决办法: 先在可视区创建这个flash,然后再把它定位到它应该在的位置
        







0 Comments:

Post a Comment

Subscribe to Post Comments [Atom]

<< Home