必威体育下载基督教Heilmann

您当前正在浏览的是必威体育下载基督教Heilmann十月的博客必威体育简介档案,2007。

10月存档,二千零七

用幻灯片分享展示您的演示幻灯片,PHP和一点JavaScript

星期三,10月31日二千零七

首先,我是一个的粉丝slideshare,一个允许你上传演示文稿的网络应用,开放的办公室或PDF并在网上分享。Slideshare转换了演示文稿(遗憾的是,在字体和字距方面并不是100%),人们可以对它们进行评论,所有幻灯片都有一个文本版本,您可以将幻灯片嵌入博客或其他站点。

当我检查我的幻灯片时,我看了一下美国石油学会但我总是对必须通过开发人员ID然后在服务器上做所有事情感到厌烦。这就是为什么我戴上我的“道德黑客”帽子,看了看RSS把我的幻灯片放进去,找到我需要的一切!如果你看看您将看到它不仅包含标题和描述,还包含媒体代码,在这种情况下HTML嵌入正确的flash影片。

利用这些信息,很容易构建一个查看器,使人们可以在不离开站点的情况下单击您的所有演示文稿。它可以是这样的:

接口来单击不同的幻灯片显示

当javascript可用时,这将是外观和功能。当JS关闭时,你会得到一个没有样式的链接列表,指向slideshare.net上的演示文稿。

你可以查看幻灯片显示在行动中下载一个zip文件并在您的站点上使用如果你不想知道是怎么做的。如果你这样做,继续阅读…

所需的代码非常简单,大约有70行。让我们一点一点地看一遍。我用PHP4加上卷曲,多XML以及一些使用YUI.


            
$URL = “http://www.slideshare.net/rss/user/cheilmann”;ch美元 = curl_init(;
curl_setopt(ch美元克鲁波特 $URL;
curl_setopt(ch美元CURLOPT_RETURNTRANSFER 1;
美元的幻灯片 = curl_exec(ch美元;
curl_close(ch美元;

它以URL我们想要加载和a旋度调用以提取此文件并将其存储在变量$slides中。


幻灯片美元= str_replace(slideshare:嵌入,slideshareembed,幻灯片美元);
幻灯片美元= str_replace(“媒体:标题”、“mediatitle”,美元幻灯片);
美元$ xml = domxml_xmltree(幻灯片);

使事情更容易)多XML是一个非常粗糙的工具包-更容易与PHP5以及simplexml,其中之一)我将提要中包含嵌入代码和媒体标题的命名空间属性重命名为简单元素,并从XML使用domxml_xmltree。


$ = json数组();
$ slidesharelist =”;
$ = $ xml链接- > get_elements_by_tagname(“链接”);
$img=$xml->get_elements_by_tagname(“url”);
$标题= $ xml - > get_elements_by_tagname(“mediatitle”);
$embeds=$xml->get_elements_by_tagname(“slideshareembed”);

然后我需要预先设置一个数组来包含每个幻灯片的嵌入代码,以及一个字符串来包含指向slideshare上的演示文稿的链接列表。我使用“获取元素”的标记名方法多XML获取所需内容的不同位元的数组RSS饲料。


foreach($embeds as$key=>el)
$L=$links[$key+2]->children[0]->content;
$T=$titles[$key]->children[0]->content;
slidesharelist美元。= '
  • “美元。”
  • ”;
    emb =美元el - >孩子[0]- >内容;
    如果(大小写敏感(emb美元”, 孩子们[1]- >内容;}
    preg_match_all(“/ *。 *)。* / msi, emb美元,美元obj);
    json[]= "的。obj美元[1][0]。“;
    }

    ? >

    通过遍历“嵌入”数组,我组装了指向不同表示形式的链接列表,并将嵌入代码添加到杰森数组中。我需要这一个稍后显示不同的flash电影时,访问者点击演示链接。注意,我需要跳过前两个链接元素,因为它是指向主元素的URLRSS饲料。由于某些原因,嵌入的顺序在本地主机和活动服务器上是不同的,这就是为什么我添加了额外的if语句。讨厌,那

    这就是全部PHP我们需要!现在是时候让它变得漂亮了,并添加HTML.





    因为它够黑,可以混合PHP我把所有的CSS在自己的文档中查找乐趣,只添加RSS提要作为幻灯片容器的背景。标记是主要的DIV一个无序的列表HTMLPHP脚本。这将显示链接,但尚未进行动态显示。为此,我们需要JavaScript。




    这就是,除了将数据从RSS输入“幻灯片”数组并关闭模块模式。

    与正确的样式表一起,这就足以在slideshare上拥有一个可单击的最新演示文稿列表。享受。

    将博客升级到新的wordpress

    周二,10月30日,二千零七

    由于我有很多垃圾邮件问题和其他攻击,我升级到一个新的wordpress博客。这就是为什么这看起来很糟糕,而且没有完成,但我猜你们大多数人在读到RSS无论如何都要订阅(我认为这是阅读博客的正确方式)。

    我现在没时间把它做得漂亮,但是所有的内容都在这里。什么东西坏了,请叫我一声。

    博客的社交部分被打破了

    星期天,10月28日,二千零七

    我又花了一个小时删除了一种不存在的药物的反垃圾邮件广告,现在我已经厌倦了和网络的坏人打交道,关掉了这个博客上的反垃圾邮件。我可以从我的日志中得到同样的信息,尽管我不得不去那里很遗憾。

    写博客的最初想法很棒:你发布信息,通过评论获得即时反馈,当其他博主谈论你的东西或基于它的内容时,trackback也会通知你。

    然而,这似乎结束了。如果你的博客在谷歌的pagerank中排名靠前(上个月你还没有因为尝试用它赚钱而被降级),你会得到以下信息:

    • 来自不存在的web站点的trackback(无论出于什么原因)
    • 来自网站的引用通告SEO(如http://lear必威体育下载nitself.info/ -检查页脚-SEOWordPress主题广告Flex博客(使用v0.8.9.6a - v0.8.9.8h提供)VK解决方案由数字证明???)
    • 抓取其他博客的博客的trackback (Ajaxian和Smashing杂志在有新文章时都会在web上克隆)
    • 来自笨拙的垃圾邮件发送者的评论
    • 订单上写的评论(如马可最近大谈特谈——在线和IRL:)为某个站点做广告

    这就是这个世界上邪恶的垃圾邮件制造者。但是,线路上的噪音要大得多:

    • 来自那些认为自己最新del.icio.us书签列表的人的引用通告
    • 有些人并不是真的想发表评论,而是通过暗示自己有解决方案来为自己的博客做广告
    • 来自那些没有仔细阅读文章内容的人的评论,而只是浏览文章得到的评论(这可能是因为他们阅读了RSS没有得到那篇文章只是指向一个更大的文章或产品-你得到很多在像Ajaxian这样的网站上)
    • 来自某些技术的粉丝和女孩的评论,默认情况下会认为其他一切都是错的,而谈论这些技术的人则是白痴
    • 那些试图惹恼你或把你当成“专家”的人的评论

    这也不是什么新鲜事这是三年前写的betway体育官方网但是,你不得不花更多的时间去吞咽那些非常简短和粗鲁的评论,而不是写你的博客。

    就像我说的,因为我没有显示url,所以它们在这里是毫无意义的。相反,我将发布我认为足够好到可以链接回去的url。目前,我仍然允许发表评论,因为我偶尔也会得到一些好的评论(在茫茫的垃圾中),但我只是在开玩笑,想把这些评论删掉。了。这真的很悲哀,因为我开始写博客是因为可以从任何人都可以阅读的人那里得到即时的反馈。

    我一点也不订阅那些声称评论已经死了的人的学校,如果你想自己评论博客或者推特评论它,我们使用Technorati作为反馈整合器。我不希望每个人都写博客或使用Twitter,我认为走这条路确实很危险,因为它确实有近亲繁殖的味道。人们通过搜索引擎找到我们的博客文章,不应该成为“博客场景”的一部分才能发表评论。

    也就是说,我们需要一个补救措施来修复博客的社交方面,一个容易访问和安全足以阻止垃圾邮件发送者。这确实很难,因为任何可以找到的东西都是可以拼出来的。

    逐步增强自动完成功能

    星期五,10月26日,二千零七

    我喜欢自动完成作为一种设计模式。它允许你比使用普通的搜索框更快地找到东西,并且省去了你浏览搜索结果页面的时间。自动完成意味着逐步增强一个正常的搜索框,以提供一个更快、更通畅的方式来查找信息。好的自动完成控件以一种完全不引人注目的方式来实现这一点,并且只在用户需要时加载额外的信息。

    然而,还有另一个用例我还没有很好地介绍:如果我想提供一个已定义的,少量的选项和完整的搜索,但不依赖JavaScript?解决方案是使用一个链接列表,后面跟着一个搜索框:

          







    当JavaScript不可用时,将其用作回退,并在需要时使用此信息作为自动完成控件的种子,这不是很酷吗?好吧,你可以。

    在工作中我自然会遇到YUI自动完成控件这个选项可以使用JavaScript数组甚至JavaScript函数作为选项的数据源。我们可以很容易地使用它从选项列表中获取信息:


    函数doAutoComplete(){
    var optionslinks=opts.getElementsByTagname('a');
    var ds = [];
    (var = 0;optionsLinks[我];我+ +){
    ds.push(optionsLinks[我].firstChild.nodeValue);
    };
    var acdataset=新建雅虎.widget.ds_jsarray(ds)文件;
    acDataset.maxCacheEntries = 0;
    var ac = new雅虎.widget.AutoComplete(“s”、“autocompcontainer”,acDataset);
    };

    YUI让我烦恼的是,要让整个系统正常工作,你必须包含大量的依赖项。这当然是设计的,因为它建立在YUI,但这对我来说有点烦人。但是有一种很酷的制作方法YUI控件加载YUI必需的组件:可以使用调用的对象雅虎_config并定义一个侦听器方法。每次包含a时都会调用此侦听器方法YUI组件,并将其名称作为参数获取。将它与动态创建的脚本节点结合起来,您可以一个接一个地调用依赖项:

    功能雅虎_config_ac_run(o){
    如果(o = = =未定义){
    addJS (' yahoo-dom-event / yahoo-dom-event.js ');
    }否则{
    开关(O.NED){
    例“yahoo-dom-event”:
    addJS(“动画/ animation-min.js”);
    打破;
    例“动画”:
    addJS(“自动完成/ autocomplete-min.js”);
    打破;
    “自动完成”:
    var l = document.createElement(' link');
    l.type = ‘text/css';
    l.rel = ‘stylesheet';
    l.href='http://yui.yahooapis.com/2.3.0/build/autocomplete/assets/skins/sam/autocomplete.css';
    document.getElementsByTagname('head')[0].AppendChild(L);
    雅虎.util.dom.addclass(document.body,'yui-skin-sam');
    doAutoComplete();
    打破;
    };
    };
    函数addjs(url)
    var head = document.getElementsByTagName(' head')[0];
    var s=document.createElement(“script”);
    s.src = ‘http://yui.yahooapis.com/2.3.0/build/' + url;
    s.type = ' text / javascript ';
    head.appendChild(年代);
    };
    };
    雅虎_config = {
    听众:YAHOO_config_ac_run
    };
    雅虎_config_ac_run();

    把所有的东西放在一起以列表作为回退的自动完成控件.试着打开和关闭JavaScript来看看区别。

    黑客轻击JSON的方式

    周一,10月22日二千零七

    这是我在印度开放黑客日的演讲的一部分,我只是有时间写下来。

    在这里,您将了解如何将F必威体育下载lickr照片导入JavaScript解决方案,而不必使用完整的解决方案美国石油学会.因为这是一个黑客,你只能得到最新的20张照片,如果您需要更详细的数据,比如限制为set,或者一次需要多个数据,那么您需要求助于flickr美国石油学会.

    我在前面提到过这里展示的一些Flickr标记以及我的关于如何在JavaScript中使用Flickr的24种方法的文章,但是最好能够快速地一步一步地学习如何在JavaScript中使用Flickr,而不需要借助成熟的工具必威体育下载美国石油学会打电话。

    步骤1:在flickr.com上找到您想要使用的照片

    只需在网站周围冲浪,找到一个有RSS饲料。例如,我的Flickr流http://flickr.com/photos/codepo8或者印度开放黑客日的所有照片http://flickr.com/photos/tags/hackdayindia/.

    注意,只有标签才能工作,不是搜索!

    步骤2:单击RSS链接或RSS图标(在Firefox中)并更改结尾URL调用

    这会让你URLRSS喂,例如

    http://api.flickr.com/services/feeds/photos_public.gne?tags=hackdayindia&lang=en-us&format=atom
    在javascript中直接使用这些信息所需要做的就是将末尾的“atom”重命名为“json”。

    这样做,你会得到一堆JavaScript而不是atom提要:

    http://api.flickr.com/services/feeds/photos_public.gne?tags=hackdayindia&lang=en-us&format=json


    jsonFlickrFeed({
    “标题”:“来自每个被标记为hackdayindia的人的照片”,
    “链接”:“http://www.flickr.com/photos/tags/hackdayindia/”,
    “description”:“”,
    “修改”:“2007 - 10 - 12 t14:08:47z”,
    “发电机”:“http://www.flickr.com/”,
    “物品”:(
    {

    “标题”:“印度报纸开放黑客日报道”,
    “link”:“http://www.flickr.com/photos/codepo8/1552753330/”,
    "媒体":{“},
    “date_taken”:“2007 - 10 - 12 - t15:08:47喂饲”,
    “说明”:“

    CODEPO8公布照片:

    印度报纸开放黑客日报道

    班加罗尔的报纸中午刊登了一篇关于开放黑客日的文章,很明显我是一个道德黑客,被Brad和David围绕着:)

    ”,
    “发表”:“2007 - 10 - 12 t14:08:47z”,
    “作者”:“nobody@flickr.com(codepo8)”,
    “author_id”:“11414938 @n00”,
    “标签”:“印度班加罗尔报纸正午成名”必威体育下载
    },
    {

    “标题”:“分解”,
    “link”:“http://www.flickr.com/photos/code_-gual/1536271756/”,
    "媒体":{“},
    “date_taken”:“2007 - 10 - 06 - t23:18:58喂饲”,
    “说明”:“

    code_martial公布照片:

    打破它

    乔·阿诺德跳霹雳舞。

    ”,
    “published”:“2007-10-10t20:43:01z”,
    “author”:“nobody@flickr.com(code_军事)”,
    “author_id”:“61697474 @n00”,
    “标签”:“雅虎舞蹈班加罗尔泰姬陵黑客攻击50mmf18af hax0rz tajhostjoearnold hackdayindia”
    },

    /…等等....
    ]

    })

    第3步:编写显示功能

    如你所见,Flickr美国石油学会将数据集包含在执行jsonFlickrFeed的函数调用中,它允许你用这个名字定义一个函数:




    的数据杰森物体有点歪,特别是描述中的编码输出在JavaScript中几乎是无用的。但是,使用每个项目的media.m属性很容易获得图像数据并显示所有图像:




    不过,我相信你知道,使用document.write是导致脱发和其他问题的主要原因,所以使用一些好的DOM而是编写脚本。这只是为了这个例子。

    第四步:选择不同文件结尾的照片大小。

    唯一剩下的烦恼是照片的大小。再一次,破解flickr的url可以帮助你做到这一点。默认情况下,Flickr将选择m是照片的中号尺寸。简单地重命名适合你的尺寸:

    • _b是大尺寸(1024)
    • _t是缩略图
    • _是75×75像素的正方形
    • _m是中等大小
    • 删除_ ?2 .加长就是要小一号的。

    你也可以通过点击图片细节页面来获得尺寸,例如http://www.flickr.com/photo_zoom.gne?id=1536271606&size=s并检查图像属性。

    黑客快乐!