Mootools在Chrome下奇怪的表现

写了个在页面中点击小图查看大图的功能,应用到了我的blog上,效果可以点一下我前一篇日志中的图。本来在Firefox和IE下都跑得挺好的,可惜我也比较喜欢用Chrome,于是用Chrome看了一下,结果却发现很奇怪的现象:先是两个不同对象的动画效果会混乱,好不容易调好了结果却发现大图的尺寸也乱了……

先是动画效果的问题,两个不同的Element,均使用MooTools封装后的Element对象的morph方法,代码如下:

// 背景层的动画
this._overlayer.morph({ 'opacity': [0, 0.8] });
// 图片的动画
this._imagelayer.morph({
    'left': ex, 
    'top': ey, 
    'width': size.width, 
    'height': size.height, 
    'padding': 8 
});

代码中并没有想要改变this._overlayer宽和高,结果却是this._imagelayer出不来了,this._overlayer的宽和高却变成了图片的宽和高,想想应该是把morph对象弄混了。于是试试给this._imagelayer新new了一个Fx.Morph对象,这样子:…

jQuery被微软纳入ASP.NET AJAX

.net平台上本来有一套Microsoft自己的Ajax开发框架,不过貌似反应不怎么好,现在终于有个好的消息了:非常火热的jQuery框架已经被Microsoft纳入了ASP.NET AJAX开发框架中,ScottGu已在其BLOG中对其做了较为具体的介绍:

原文地址:jQuery and Microsoft

从图上可以看出,在Visual Studio中,其智能提示还是相当不错的。另外,Microsoft将会另外开发一些基于jQuery的控件(controls)和小插件(widgets),而jQuery的帮助文档也将加入官方的帮助文档中。据其介绍,此功能不久后即将发布。

不知道以后会不会继续支持MooTools,以前辛辛苦苦地写了个注释文档,用了几次以后发现MooTools更新了,于是就再也没有用过了。Visual Studio 2008用来写JavaScript还是很不错的,希望以后能够支持MooTools!…

Chrome浏览器的一个不小的bug

今天在玩JavaScript的语法高亮,弄得差不多了在Firefox 3和IE 7下都正常了,最后想看看Chrome下是不是正常,结果打开我的测试页面,除了在前面的一部分文字显示出来以外,页面剩余部分居然是一片空白!

很诡异的用chrome打开源代码看(因为有语法高亮,很容易知道问题出在哪),结果很明显,我的js中有这么一句:

this.ignore = '<!--';

在源代码查看器中显示,Chrome从这个注释字符串开始,把后面的都当成注释了,偏偏我后面的js里面还有这么一行:

this.commentOff = '-->';

由于这一段js被chrome认为是注释,以致页面不能正常解析,所以这个字符串前面的HTML代码能够正常工作,而这个后面的就不行了……

不过有一个解决办法,就是把这段js写在外部文件中就没这个问题了^_^…

[翻译]jQuery和MooTools的真正区别(下)

看这篇之前,请先看上一篇:[翻译]jQuery和MooTools的真正区别(上)

Extensibility – Because I Like To Tweak Things

可扩展性——因为我喜欢调整一些东西

This brings me to the last big benefit that coding this way provides, assuming that you are writing your code in a way that lets you take advantage of it: extensibility. MooTools has a class based hierarchy (inspired by Dean Edwards excellent work), but don’t let the name fool you. It’s called a class but it’s really just an object factory that makes taking advantage…

[翻译]jQuery和MooTools的真正区别(上)

自己一直在用MooTools框架,偶然看见这篇文章,作者是MooTools Team的成员之一,讲解了jQuery和MooTools的一点点区别,主要是我觉得他写JavaScript代码和他的思维方式很值得学习。另外,对JavaScript的编程思想和对框架的选择都有很多很好的建议,对于犹豫在各种框架上的人有很好的指导作用,另外对于想深入对框架进行研究或者想自己开发框架的人也有很好的建议。文章虽然很长,但是我觉得不错,然后就翻译了。水平有限,文笔粗陋,其中有少数地方自己都觉得翻译得有些牵强,欢迎批评指正。

由于文章太长,我这里就分了上下两篇,下文在这里:[翻译]jQuery和MooTools的真正区别(下)

原文:jQuery, MooTools, which is the most popular and well represented framework and What Really Makes One Framework

可恶的Spam机器人

下面是几条IIS的访问日志:

23:59:29 GET /blog/include/validatecode.asp – 80
– 219.134.121.206 Mozilla/3.0+(compatible;+Indy+Library) 200 0 3

23:59:29 POST /blog/blogcomm.asp action=postcomm 80
– 219.134.121.206 Mozilla/3.0+(compatible;+Indy+Library) 200 0 2

23:59:29 GET /blog/blogview.asp logid=304 80
– 219.134.121.206 Mozilla/3.0+(compatible;+Indy+Library) 301 0 0

23:59:29 GET /blog/article/304.aspx – 80
– 219.134.121.206

用ASP来做301永久重定向

BLOG换程序了,简单地把以前的一些链接做了一个重定向(Redirect),用的是Response.Redirect,在ASP中,这种方式是302跳转:

302重定向是临时性转移,301是永久转移,很多网站都不太注意这两个跳转的区别,而搜索引擎在对302和301跳转时会进行区别对待。使用301跳转后,搜索引擎会把旧地址下原有的外部链接和数据转移到新的地址下面,而302重定向则不会如此。

在ASP中可以使用如下方法来进行301重定向:

Response.Status = "301 Moved Permanently"
Response.AddHeader "Location", NewUrl
Response.End()

可以看到301的结果如下:

原来Chrome支持::selection样式表设置

这个是用来设置被选择文字的背景色和文字颜色(就是文字高亮时的样子),例如:

Chrome支持::selection,Firefox是支持::-moz-selection,IE就啥都不支持了,不过这两个样式要分开写,像这样:

::selection{
    color:#f0d000;
    background-color:#0f581a;
}
::-moz-selection{
    color:#f0d000;
    background-color:#0f581a;
}

快有何用,Chrome不认自家东西?

最近继续用Google Reader,看到好的blog还是会继续添加RSS到Google Reader,用Chrome的时候才发现这个怪事,自家人不认自家人了:

第一步:点这个按钮:

第二步:添加到Google Reader,注意URL的参数也是正确的:

第三步:Failed了……这个时候的参数还是正确的:

这几步在Firefox下却没有任何问题,看来仅仅只有速度还不行啊,也要保证可用性才好。…

虚惊一场后,Silverlight 2 RC0这次是真的发布了

虚惊一场之后,Silverlight 2 RC0终于还是发布了。基本上没有什么大的改变,也没有什么太多新特性。新增了三个组件:

一些新的Control Skin,具体可以看这里:
Silverlight 2 Release Candidate Now Available

这里有一些Breaking changes说明,你也可以下载这个文档

相关工具下载页面

Microsoft Silverlight Tools for Visual Studio 2008 SP1
Microsoft Expression Blend 2 Service Pack 1 Preview
Windows: Silverlight 2 RC0 Developer Runtime
Mac: Silverlight 2 RC0 Developer Runtime