- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
创建Block
千一网络 译
本文翻译自 http://www.popfly.ms/
因译者水平有限,加之时间仓促,书中难免有误,敬请批评指正。
2007-12-3
Version 1.8.1
创建Block
概览
在本指南中你可以学到如何在Popfly中创建一个Block。推荐你使用不同于Popfly的开发环境创建你的Block,因为Popfly的JavaScript编辑器目前还缺少某些功能,比如语法高亮。(运行于 Popfly)。我们推荐 Microsoft Visual Web Developer 2005 Express,可以从/vstudio/express/vwd/免费下载。
一个Block是一个包含于单一JavaScript文件(.js)的中间件,它驱动供用户代码调用的方法,一个Block也可以用于资源存储,诸如XAML文件,图像等等。
一个Block可以作为外源服务,比如Web服务,或者它可以是一个简单的一个有用的程序库,比如:一个给定了半径计算圆面积的程序。一个Block也可以作为显示层:从其它的Block读取数据并以有意义的形式显示,用户可以与之交互。在本指南中我们将使用Soapbox (/) 作为我们创建一个Block的Web服务示例。
JavaScript 类布局
一个用户可能用决定将许多Block用于一个网页中,因此将你的 JavaScript 封装成一个对象并且不要使用全局函数是很重要的,使用 Silverlight 的事件钩子抛出的异常。你可以按你的需要定义任意多个类,但是有一点你的对象需要的函数
规则 1:创建类,而不是脚本
每一个Block都需要有一个类定义,成员函数添加在这个类原型上。比如:
function SoapBoxClass(){
//一些代码
} 上面的代码声明了一个SoapBoxClass函数,该函数可以像下面一样通过修改原型来进行扩展。
函数
你想暴露给用户的函数应该在类原型中定义;通过在prototype中增加一个合适的匿名函数来创建一个新入口来实现这一点。
比如:
SoapBoxCtotype.search = function (parameter) {
//一些代码
};
以下是一个在全局名称空间中声明函数的示例,在 Popfly 里这样做是一件糟糕的事情。这是因为你无法控制哪些函数已经存在,同样地你的Block的行为也是不可预知的。
function degtorad(deg){
return deg * (2 * Math.PI) / 360;
}
和Popfly交互
因为Block是一个中间件,你应该在Popfly里面调用,并和用户交互。
从Web Server获取数据
许多控件都会从第三方获取数据,比如从一个网站。如果你从一个非Popfly域名的站点获取数据,浏览器安全沙盒将会提示用户权限或毫无提示地抛出一个异常。为了正常读取,Popfly提供两个方法来让控件从任何服务器上获取数据:getXml和getText。
getXML-XML数据
xmlObject = environment.GetXml(url)
xmlObject是HTTP响应读取和解析后的XML文档。
url是HTTP请求的URL,格式如:/coding4fun/rss.aspx?Tags=c4fnews。
比如:
var url = /rss.aspx?searchTerm=+searchTerm;
var resultXML = environment.getXml(url);
getText-文本数据
text = environment.GetText(url)
text是http响应的body。
url是HTTP请求的URL,格式如:/coding4fun/。
输出结果
结果可以以两种方式输出:返回一个对象,或以HTML的形式添加到输出页面。因为Popfly就是从多个数据源获取数据并结合成“mashup”,所以我们更希望你写的所有函数都返回一个对象。显示信息的Block不适用本建议要求。
返回对象
如果你想返回一个对象,就需要类定义,除非返回的是JavaScript内置对象,比如一个数组。要为每一个Block声明公共属性,你可以使用this关键词动态地创建,就像下面说明的:
function SoapBoxVideo(title, link, pubDate, description, category, playURL, streamingURL, copyright, thumbnailURL, credits, toStringHTML)
{
this.Title = title;
this.Link = link;
this.DatePublish
您可能关注的文档
- 冬训队医讲座.ppt
- 决策者 - 会计学院.ppt
- 减数分裂 - 深圳大学生物科学实验教学省级示范中心.ppt
- 出口食品生产企业 - 国家认证认可监督管理会.doc
- 出版集团2002年度 - 文化司.doc
- 函数的单调性和奇偶性 - 教育--人民网.doc
- 分类 - 宁波市商务发展中心.doc
- 分组分享教学法操作指南 - 佛山市教育科研网.doc
- 创 造 物 流 新 世 界 - 武汉大学动力与机械学院.ppt
- 创刊寄语 - 广东外语外贸大学发展规划处.doc
- 福莱特玻璃集团股份有限公司海外监管公告 - 福莱特玻璃集团股份有限公司2024年度环境、社会及管治报告.pdf
- 广哈通信:2024年度环境、社会及治理(ESG)报告.pdf
- 招商证券股份有限公司招商证券2024年度环境、社会及管治报告.pdf
- 宏信建设发展有限公司2024 可持续发展暨环境、社会及管治(ESG)报告.pdf
- 品创控股有限公司环境、社会及管治报告 2024.pdf
- 中信建投证券股份有限公司2024可持续发展暨环境、社会及管治报告.pdf
- 洛阳栾川钼业集团股份有限公司环境、社会及管治报告.pdf
- 361度国际有限公司二零二四年环境、社会及管治报告.pdf
- 中国神华能源股份有限公司2024年度环境、社会及管治报告.pdf
- 广西能源:2024年环境、社会及治理(ESG)报告.pdf
最近下载
- 机械行业“人形机器人的Optimus时刻”系列(五):触觉感知(电子皮肤),高山将越,坦途在望.pdf
- 培训教材污水处理厂运营管理方案.pptx VIP
- 纪检委处理回复函.docx
- AP微积分BC 2016年真题 (选择题+问答题) AP Calculus BC 2016 Released Exam and Answers (MCQ+FRQ).pdf VIP
- 武汉市2025届高中毕业生四月调研考试(四调)物理试卷(含答案).pdf
- 《西安事变》课件.ppt VIP
- 排水沟设计计算11.xls VIP
- 2010版中药典,中国药典2010年版.doc
- 精彩拍摄跟我来.docx
- 小学常用单词分类汇总衡水体英语字帖(含例句).pdf
文档评论(0)