即使它似乎处于某种危险之中,开放视频标准也是一个好主意.我看到了一些关于运动跟踪的演示 - 只是概念验证,但仍然很有趣.现在,我会说像这样的概念真的会有所收获,如果可以访问用户的网络摄像头......想象一下用双手在半空中浏览Flickr.
我用谷歌搜索了一下,但我找不到关于这个问题的任何详细讨论.有些地方提到过,但这并没有让我走得太远.有人知道是否计划对此提供支持?如果是,那么"何时"的任何预测?;-)
当然,我猜他们必须为它设想一个非常好的安全模型.
我们最近使用Prototype构建了一个Web应用程序,大量使用了Class.Create()功能.现在,我们正在考虑迁移到jQuery,因为它似乎被认为是一个"更好"的库.我一直在阅读有关该主题的一些内容,并发现jQuery没有像Prototype那样直接内置对类创建的支持.当然,还有.prototype和jQuery.extend(如/sf/ask/5563421/中所述),但之后一些更多的搜索,我觉得jQuery并不真的"想要"你这样编写脚本......
同一页面上有一篇帖子提到了John Resig的Classy插件,这对我来说很棒.但是,该页面表明它实际上是一个愚人节笑话,并且Resig实际上建议不要使用该代码.我很高兴,但我想知道这一切的原因是什么,当然,他们希望你做的是什么.有人可以开导我吗?
-编辑-
谢谢你有趣的答案.为了清楚起见:这是否意味着将我在Prototype中创建的类重写为"塑造"一个类的jQuery方式,并且仍然以与以前相同的"方式"使用它们?或者这仍然被认为是不好的做法,我应该采用不同的方法吗?
我正在使用Zend_Navigation(对框架的加法,btw)来构建我的菜单,然后它应该在页面中呈现(显而易见).我首先在控制器中的某处设置容器:
// $pages is the array containing all page information
$nav = new Zend_Navigation($pages);
$this->view->navigation($nav);
Run Code Online (Sandbox Code Playgroud)
然后,在布局中,它呈现如下:
echo $this->navigation()->menu();
Run Code Online (Sandbox Code Playgroud)
哪作得很好.现在:我希望菜单的呈现方式略有不同.我正在构建的页面使用jQuery Fisheye-plugin来构建类似Mac的Dock菜单.但是,这个插件需要一个特定的标记......
实际上,它需要一个<a>包含<img>(用于图标)和<span>(用于工具提示)的元素列表.标准的Menu视图助手将所有内容呈现在无序列表中(逻辑上),并将'label'参数作为链接文本.
似乎传递给'label'参数的内容在渲染之前被转义,因此插入html对我没有任何好处.此外,Fisheye通常似乎不会将其包含在<li>标签中的项目包含在整个事物中<ul></ul>,而只是一个单级的<a>元素列表.
我正在考虑为dock编写一个自定义视图助手,它可以负责插入<img>和<span>,但是我很难将自定义视图助手附加到Navigation类.我只是无法弄清楚在哪里放置它以及以何种方式,即使我的所有其他自定义类(模型等)都由自动加载器甜蜜地照顾.有什么想法吗?
然后,即使我可以让这个视图助手工作,我仍然留下HTML无序列表 - 我知道我也可以使用自定义视图助手丢失那个,但我一直是包含主要的粉丝的粉丝为了语义,列表中的导航菜单.
如果有人能帮助我一点点,我会非常感激.如果Fisheye不打算与<ul>ss合作,那就太糟糕了......在这种情况下,是否有充分理由完全失去Zend_Navigation?
我一直在阅读Javascript语言中的两个(相对)新概念 - Web Workers和John Resig的令人敬畏的Processing.js(好吧,不是真正的新'Javascript概念',但你得到了我的想法).两个很好的例子都徘徊在互联网上,但我还没有找到一个有效地采用这两种技术的例子.它看起来非常有趣和强大,所以我想我最好试一试.
但是,我无法找到最好的脚本设计来集成它们两个......在我看来,通常,当使用Processing.js时,某些类在 "Processing-application" 中定义.它允许您使用类似Java的语法来解决此问题.但是,这些类只能在Processing-application中访问 - 这很明显.但后来我们得到了工人......在这个惊人的例子中,Javascript函数对象首先在一个单独的脚本中定义,如果需要Worker-usage,那么Worker-script会导入该对象的原型和类型的'bolt'本身就可以了.
对我来说,这两者看起来并不"可互换",因为当你在Worker脚本中时,你无法访问在Processing-application中定义的类.可能有一个原因,因为类似处理的类肯定不是很像Javascript.据我所知,我将不得不在我的Worker脚本中对类进行类似的定义(以新函数原型的形式) - 这对于可维护性来说不是很好,而且看起来非常糟糕的设计对我来说,即使我仍然是这个主题的新手.
我忽略了什么吗?我想要一些不应该的东西吗?或者我只是误解了一些基本概念?
谢谢您的帮助!
编辑:
继续尝试弄乱工人的原型,以便"塑造"它就像它应该工作的对象一样,但很快意识到这不是可行的方法.
让我们尝试使用一个大纲:我有一个类'Ball',除了存储二维位置之外几乎什么都不做.在每个draw()循环中,Processing.js调用其update()方法,这使得Ball采用新的位置.然后,display()调用该方法,让Ball在其当前位置绘制一个小圆圈.
没什么好开始的.现在,假设确定球的新位置是一个非常昂贵的操作 - 例如,如果它涉及球通过'复杂'引力场的运动.如果必须在绘制之前每次进行此计算,则至少会导致一些延迟.但是,如果您设法同时执行此操作,则可能会更顺畅地运行.所以,我发现我可以给Ball类在其属性列表中添加一个额外的'位置'数组,它将保存所有连续的位置.当球被实例化时,它会创建一个新的工人,它将开始计算位置,每次完成一个位置时,它会将一条消息回发给Ball,其中包含一个新的二维位置.然后Ball会将这个推到它的位置数组上,所以每次它必须更新它的位置时,它只会走到数组中的下一个记录.
总而言之 - 好的或坏的想法?如果好,有关如何设计的任何建议吗?
我正在通过javascript生成一个无序列表(使用jQuery).每个listitem必须为"click"事件接收自己的事件监听器.但是,我无法将正确的回调附加到正确的项目上.(剥离的)代码示例可能会略微清楚:
for(class_id in classes) {
callback = function() { this.selectClass(class_id) };
li_item = jQuery('<li></li>')
.click(callback);
}
Run Code Online (Sandbox Code Playgroud)
实际上,这次迭代还有更多,但我认为这与问题无关.在任何情况下,发生的事情是回调函数似乎被引用而不是存储(和复制).最终结果?当用户点击任何列表中的项目,它将始终执行的动作最后 class_id的在classes阵,因为它使用存储在功能callback在说具体点.
我找到了肮脏的解决方法(比如href在封闭的a元素中解析属性),但我想知道是否有办法以"干净"的方式实现我的目标.如果我的方法令人恐惧,请说出来,只要你告诉我原因:-)谢谢!
当我阅读PrototypeJS的文档时,我遇到了这个主题:它的身份功能.我做了一些进一步的搜索和阅读,我认为我理解它的数学基础(例如乘以1是一个身份函数(或者我误解了这个?)),但不是为什么你会写JS(或PHP或C或其他)函数,基本上将X作为参数,然后只是做类似的事情return X.
是否有更深入的见解与此相关?为什么Prototype提供这个功能?我可以用它做什么?
谢谢 :)
jquery ×3
javascript ×2
prototypejs ×2
events ×1
fisheye ×1
html5 ×1
iteration ×1
oop ×1
video ×1
web-worker ×1
webcam ×1