当前文章被分类为:AJAX

Ajax Vs Flash

在RIA应用中,到底应该使用Ajax,还是使用Flash呢?它们各有长处,让人难以取舍.下面就它们的特点做一个小小的总结.

Javascript
+ 不需要额外的插件.
- 不同的浏览器下可能会产生不同的行为
- 不能访问音视频设备
- 可能会有少数用户会关闭javascript
- 如果你写的代码很烂,大家都能看到

Flash
- 需要额外安装插件
+ 在各种浏览器上,如果flash player的版本一致,那么flash的行为也会基本一致
- 用户可能不会安装有相同版本的flash player
+ 可以直接访问音视频设备
- 可能会有很多用户屏蔽flash
+ 如果你写的代码很烂,不用担心,大家都看不到

评论 (14)

Ajax+PHP+YUI手工制作rss阅读器

上次俺的简陋练习作品Ajax+json小有心得,这次继续尝试利用Ajax+PHP+YUI手工制作rss阅读器。
写一点html来展示RSS的内容
PLAIN TEXT
CODE:

<body>

<h1>RSS阅读器</h1>

<div id="rss_bd">内容待填补</div>

</body>

评论 (4)

Yahoo搜索大变形

昨天听说yahoo搜索大变形,跑去试了一下,果然有不同的感受。首页就不说啦,没啥值得浪费口水的,搜索结果页面有巨大变化:

每次只显示五条结果
翻页放在右侧纵向排列
左青龙(相关搜索词)右白虎(图片,音乐,博客等相关)内容在中间

让人惊讶的是翻页非常快,点点就出来了,我要是用鼠标在右边翻页一直点下去咋办?那会没完。祭出firebug窥探之,每一次翻页均会有一个ajax提交:
POST http://www.yahoo.cn/data:foo (656ms)
正如我们看到的,post方式的提交,返回了一堆乱遭遭的数据,以我有限的知识看来,这八成是json格式。翻页还支持快捷键,j/k 控制上下翻,八成是vim的爱好者干的好事,没说的。
用着挺爽

评论 (2)

greasemonkey内置了ajax管理器

greasemonkey这工具,就好像web开发人员的作弊器一样,好玩。经常去的网站,若是看着不顺眼,就祭出greasemonkey对它页面元素的位置调整一番,把主题内容字体搞大,把广告隐藏不见,别人的网站我做主,倒也有一番小小乐趣(我可没有hack它的站点哦)。这些天看看文档,原来人家已经内置了xmlhttpRequest的api,不用费牛劲去外部导入一些js来搞这些基础工程了。
Description
GM_xmlhttpRequest makes an arbitrary HTTP request. The details argument is an object that can contain up to seven fields.
一个greasemonkey的ajax调用
PLAIN TEXT
CODE:

GM_xmlhttpRequest({

    method: 'GET',

    url: 'http://greaseblog.blogspot.com/atom.xml',

    headers: {

        'User-agent': 'Mozilla/4.0 (compatible)

Greasemonkey',

        'Accept':

 

'application/atom+xml,application/xml,text/xml',

    },

    onload: function(responseDetails) {

        alert('Request for Atom feed [...]

评论

Pear::Pager和AJAX的整合应用

作为一个PHP开发人员来说,大概很让人受用的一个东东就是Pear的类库了。我们知道,Pear::Pager是专门处理分页的,而Pear::HTML_AJAX则是Ajax应用的一些类库。但是Pager也不仅仅是只能用于html的分页链接,它已经为比超女还红的Ajax做好了准备,下面看看这两个包如何整合应用。
Pager and Javascript
现在走出第一步,Pager已经能够构建出javascript的链接了,和Ajax整合,理论上应该也是能够实现的,下面是Pager和javascript分页的一个例子:
PLAIN TEXT
PHP:

require_once 'Pager/Pager.php';

$data = range(1, 100); //an array of data to paginate

$pager_params = array(

    'mode'     => 'Sliding',

    'append'   => false,  //don't append the GET parameters to the url

    'path'     => '',

    'fileName' => 'javascript:revealDiv(%d)',  //Pager replaces "%d" with the page number...

    'perPage'  => 10, //show 10 [...]

评论

Connection Manager Of YUI

前些天试用了Yahoo! UI Library的Connection Manager工具,略有些心得,这里丢块板砖出来,能不能引到玉,那是后话。
Connection Manager能干什么
The Connection Manager is a utility that enables you to make in-page HTTP requests through a simplified interface to the XMLHttpRequest object. The Connection Manager handles cross-browser instantiation of XMLHttpRequest, negotiates the server response and uses a callback pattern to process the response data.
没话说,这是一个ajax的javascript类库,Yahoo出品,嘿嘿。
使用心得

打开程序包的build/connection目录,下有connection.js,connection-debug.js,connection-min.js,这三个文件其实内容都一样,第一个是正儿八经的源代码,中间那个不用说可以用于debug,最后那个也不是废柴,它经过压缩处理,javascript代码仅仅只有8k,相对connection.js高达20k肥硕体积来说,显然更经济,可用于线上系统。
这三个文件最好都要的:
PLAIN TEXT
CODE:

<!-- Dependency --> 

<script src="yahoo.js"></script> 

 

<!-- [...]

评论

用php5来赚大钱

写这个标题一定会被打死。
可能这个幻灯跟赚钱没关系--Getting Rich with PHP 5(IE之外的浏览器可看)。但是个人认为它所介绍的程序优化和分析的方法比较有意思,广大php爱好者如能掌握,说不定真的就解决了温饱问题进而赚了大钱。
幻灯的大义:
首先你准备建一个大流量的网站
这个网站真的很大,可能会有这些特点:

web 2.0的亲戚
有tag系统
ajax用的港港的,溜的很
有500000活跃用户
等等。。。

初步估计这个流量大概是:
平均:578次访问/秒
峰值:578 x 3 = 1700次访问/秒
而且这个网站是用Linux+Apache+PHP做的,怎么样?头大了吧。
怎么样用尽可能少的资源,服务更多的人群呢?这就是这个幻灯的最终效果,省下了服务器,也就是赚了钱,对吧?至于您的50万流量的网站有没有转下去并因此赚了钱,那是另外一回事。
用到的关键词
Postgresql,Mysql,APC,Callgrind

评论 (2)