小编Ale*_*lex的帖子

仅使用Mustache显示列表中的第一个项目

我正在使用胡子模板引擎,我只想显示长列表中的第一项,但似乎无法找到这样做的文档?

如果我使用:

{{# links}}<a href="{{& url}}">{{& title }}</a>{{/ links}}
Run Code Online (Sandbox Code Playgroud)

我得到了所有的链接,但是我只希望第一个显示,听起来很简单,但我找不到任何文档.

javascript mustache

22
推荐指数
1
解决办法
2万
查看次数

是否有任何浏览器支持CSS4语言/方向选择器?RTL TTB

我知道W3C的工作草案尚未最终确定(在编写本文时),但许多非标准化的CSS通常在供应商正式化之前实施.

我发现很难找到这方面的资源,并想知道是否有人知道哪些(如果有的话)支持语言或基于文本方向的选择器呢?

例如:

p:dir(rtl){
   /* some rules for right-to-left languages */
}

p:lang(somelanguage){
   /* some rules for specific language */
}
Run Code Online (Sandbox Code Playgroud)

css css-selectors right-to-left

12
推荐指数
1
解决办法
3970
查看次数

清除localstorage中的对象

使用localstorage我有一大堆未指定的项目使用动态名称保存使用数据名称空间,如下所示:

localStorage["myAppName.settings.whatever"] = something.whatever; 

//and this:
localStorage["myAppName.data."+dynObj.name] = dynObj.data;
Run Code Online (Sandbox Code Playgroud)

我想保留设置,但不保留数据.但是,我永远不会知道我的数据对象中的所有名称是什么,所以我无法单独清除它们.我需要在每次加载应用程序时清除这些内容,但我必须保留设置,因此 localstorage.clear()不是一个选项.

我试过了:

localstorage.removeItem("myAppName.data")
Run Code Online (Sandbox Code Playgroud)

但没有骰子.

任何人对如何清除localstorage的动态命名部分有任何想法?

javascript html5 local-storage

9
推荐指数
1
解决办法
2万
查看次数

HTML中的HTML5视频完全预加载

我有一个高质量的视频,我无法压缩太多,因为它将成为许多图像分析的基础,每个帧将被重绘到画布然后进行操作.

我试图在播放之前预先加载整个内容,因为我无法将视频停止,缓冲并继续.是否有一个我可以收听的事件,表示在开始播放之前整个视频已预先加载?

这是我在JS/jQuery中的表现:

this.canvas            = this.el.find("canvas")[0];
this.video             = this.el.find("video")[0];
this.ctx               = this.canvas.getContext("2d");
this.video.autoplay    = false;

this.video.addEventListener("play",this.draw)
this.video.addEventListener("timeupdate",this.draw)
this.video.addeventlistener("ended",this.trigger("complete",this))
Run Code Online (Sandbox Code Playgroud)

javascript video jquery html5 html5-video

9
推荐指数
3
解决办法
3万
查看次数

旋转后获取相对x和y div

所以这是我希望我在数学课上更加注意的一个:

http://i.imgur.com/noKxg.jpg

我有一个大容器div,在里面我有一些旋转的内容div.

我想要做的是通过在视口中移动主要Div来在子div之间进行动画制作.如果我只是基于简单的x/y(上/下)计算来做这件事,那将非常容易,但是当涉及到旋转时,我的数学就会崩溃.

我尝试了一些事情并没有真正破解它.

这是我的结果排序的简化版本,请随意小提琴:

http://jsfiddle.net/dXKJH/3/

我真的想不出这个!

[编辑]

我将这个解决方案作为首选项,因为我已经采用了一种方法使旋转插件与MSIE6 +一起工作.

不过我必须说,虽然我遵循所有的数学函数并且它们看起来很干净但结果不是像素完美的,这与PI计算有关吗?似乎更大更多的间隔我使盒子与左上角相匹配的可能性更小?奇怪.

任何人都可以提醒我,如果角度超过45度,我需要做什么触发,我找不到参考我记得这几年前数学课时有4个象限或什么... rr我怎么样希望我多关注.. :-)

非常感谢你们迄今为止所有的帮助!!

javascript css math jquery html5

7
推荐指数
1
解决办法
3286
查看次数

重新渲染后,骨干视图事件不起作用

我把我的头发拉出来,除非我做了最荒谬的事情,否则在重新渲染视图之后似乎无法让鼠标事件在我的骨干视图上工作:

$("a").die().unbind().live("mousedown",this.switchtabs);
Run Code Online (Sandbox Code Playgroud)

我实际上已经在那里但是决定更新到最新的主干并尝试使用新delegateEvents()功能.

这是我的项目ID结构的方式:

Appview / AppRouter
  |
  ----->PageCollection
             |
             ------->PageView/PageModel
             ------->PageView/PageModel      these page view/models are not rendered
             ------->PageView/PageModel
             |
             ------->PageView/PageModel
                        |
                        ----->render()      *when a pageview is rendered*
                                |
                                -----> Creates new 
                                     Tabcollection
                                       |
                                       --->TabModel/TabView   <-- this is where the issue is 
Run Code Online (Sandbox Code Playgroud)

会发生的事情是tabcollection有一个主tabview来管理所有选项卡,然后为每个选项卡创建一个新的模型/视图,并在每次加载选项卡时让监听器重新呈现tabview.如果tabview被重新渲染,除非我把那个有人工作的jQuery语句放在那里,否则没有任何鼠标事件可以工作.

下面是tabview并渲染(我已经将它剥离了很多)

var TabPanelView = Backbone.View.extend({
    className:      "tabpanel",
    html:           'no content',
    model:          null,
    rendered:       false,
    events:{
        'click a.tab-nav': 'switchtabs'
    },
    initialize: function(args)
    {
        this.nav            = $("<ol/>");
        this.views          = args.items;
        this.className      = args.classname?args.classname:"tabpanel";
        this.id             = args.id;
        this.container …
Run Code Online (Sandbox Code Playgroud)

javascript jquery javascript-events backbone.js underscore.js

7
推荐指数
1
解决办法
5373
查看次数

Backbone中的Twig样式模板的Javascript实现

我在Backbone应用程序之前使用过Backbone的下划线模板,Mustache模板和Jquery模板,但是我正在构建一个框架,PHP和Javascript都使用相同的模板,并决定采用Twig模板格式.

一切都运行在PHP精细,但是我现在已经来到了JS和已经找到了一把不同的JavaScript库的枝杈.

我想知道是否有人曾经将骨架模板与骨干应用程序集成,并且可以节省我很多时间来建议他们使用哪个lib.

非常感谢.

javascript backbone.js twig

7
推荐指数
0
解决办法
778
查看次数

骨干路由器不会触发事件

我在应用程序启动时在dom上有一些导航链接,我希望通过Backbone劫持渐进增强功能(这是一个非常静态的文本内容版本,位于主干应用程序的基础上).

html看起来像这样:

...
<body>
<header>
<nav>
<ol>
<li>
<a href="/en/home">home</a>
</li>
<li>
... few more links
</header>
Run Code Online (Sandbox Code Playgroud)

然后使用以下方法实例化我的应用程序:

var App = (function(fw){
 var $      = fw;
 var workspace            = {};
 var self     = {};
 var lang     = "en";
 var models     = {...};
 var views     = {...};
 var collections   = {...};
 self.init = function() {
  workspace = new Workspace(
  {
    routes: {
     "/": "home",
     "/home": "home",
     "/terms": "terms",
     "/news": "blog"
   },
    lang : lang
  })
 }
 return self;
});
var app; …
Run Code Online (Sandbox Code Playgroud)

model-view-controller jquery backbone.js underscore.js

6
推荐指数
1
解决办法
1830
查看次数

小胡子格式的骨干/下划线模板导致#pound/hash符号出错?

我正在使用骨干的下划线模板引擎和胡子格式化模式.

我已经成功地在项目的其他地方使用它,但现在我第一次使用来自胡子的循环列表模式来填充模板,这会引发一个我感到有点困惑的错误.chrome中的错误是:

"Uncaught SyntaxError: Unexpected token ILLEGAL"
Run Code Online (Sandbox Code Playgroud)

并指向回溯中的下划线模板函数,这是相当无用的但是在firebug中我得到一个更有用的错误,如下所示:

在此输入图像描述

建议哈希符号'#'是问题,这是有道理的,因为我知道胡子工作正常,因为项目的许多其他部分使用它很好,这也是我第一次使用哈希sybol在我的模板中.它看起来像循环功能或下划线的插值/模板设置的问题.

这是我的模板的相关部分:

<div class="thumblist thumblistleft" id="currentprojectslist">
    <div class="thumb-list-header">
         <h2>current projects</h2>
    </div>
    <div class="thumb-list-area">
        <ol>
        {{#worklist}}       <!----- LOOK HERE --->
            {{#current}}
              <li><a>{{title}}</a></li>
            {{/current}}
        {{/worklist}}
        </ol>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

这里是JSON的样本(所有验证都很好)

{blah blah blah lot in here before,"worklist":[{"thumb":"img/project-s.jpg","id":"340","title":"Test Project One","desc":"big load of content here","current":true}], and so on....}
Run Code Online (Sandbox Code Playgroud)

我最初在这里关注这个例子以供参考:http: //mustache.github.com/#demo

现在我在哪里想到问题可能是:

underscore.js建议在渲染胡子模板之前使用它:

_.templateSettings = {
     evaluate : /\{\[([\s\S]+?)\]\}/g,
     interpolate : /\{\{([\s\S]+?)\}\}/g
};
Run Code Online (Sandbox Code Playgroud)

也:

interpolate : /\{\{(.+?)\}\}/g
Run Code Online (Sandbox Code Playgroud)

也只是插入声明,我已经尝试了两种.但是我的正则表达式知识真的很差,我觉得它可能无法容纳哈希?无论如何......我完全被难倒了.有人可以帮帮我吗?

甚至可以像这样循环吗?看下划线源我不确定:http: //documentcloud.github.com/underscore/docs/underscore.html#section-120

非常感谢

javascript regex mustache backbone.js underscore.js

6
推荐指数
2
解决办法
7900
查看次数

是否可以在调试模式下运行chrome?

首先,我真的不确定这是超级用户还是Stack-Overflow的问题.它可能对其他开发人员有用,但它不是特定的代码问题.

在谷歌浏览器中有没有办法查看渲染引擎异常或一般调试信息?我有一些代码,我99%肯定会崩溃渲染/重绘引擎的chrome但是(我在Mac上)在Console.app我没有收到异常通知.我想知道是否有一种方法可以强迫Chrome在日志记录中更加冗长?也许这是一个webkit而不是特定于chrome的东西.

让我知道这是否真的不是堆栈溢出,我会删除/关闭问题,就像我说我知道它不是特定于代码.

javascript logging webkit google-chrome google-chrome-devtools

6
推荐指数
2
解决办法
6107
查看次数