草庐IT

3d渲染

全部标签

javascript - 为什么 translate3d 会泄漏 DOM 节点?

考虑这个HTML页面:http://jsbin.com/aYUcelo/1/(我建议下载它以摆脱所有jsbin噪音)。点击GO按钮,一个div被添加到正文中。RM删除其中一个div。它还将两种样式之一应用于新的div:newDiv.style.color="red";//ornewDiv.style.WebkitTransform="translate3d(0px,0px,0px)";可以看到chromedevtoolsmemorytimeline中的节点数量不断增加,如果应用了WebkitTransform,GC无法移除。红色样式不会发生这种情况。编辑:只是为了明确应用“红色样式”添

javascript - 使 Firefox 渲染 Canvas 文本与 CSS 文本相同

我一直在试验canvas标签和Javascript。我制作了一个页面,该页面从Twitter公共(public)时间线获取推文并将其动画化。它通过在动画背景中使用Canvas元素来工作。动画完成后,它会在顶部创建一个具有相同文本的div元素。我这样做是为了让推文文本可以选择并且链接可以点击。现在,在Safari、Chrome甚至Opera中,canvas文本和div文本看起来几乎完全一样。然而在Firefox中,文本的大小差异足以使其在变为div时“跳转”。有谁知道如何使用CSS使Firefox在canvas元素和div上呈现相同的文本?或者这是与引擎的渲染不一致。我已经把页面onmy

javascript - 使用 mustache 动态渲染部分模板

有没有办法动态注入(inject)部分模板(并使其在Ruby和Javascript中以相同的方式工作)?基本上,我试图在列表中呈现不同类型的对象。我能想到的最好的是:{{#items}}{{#is_message}}{{>message}}{{/is_message}}{{#is_picture}}{{>picture}}{{/is_picture}}{{/items}}我对这种方法并不太感兴趣。有没有更好的办法?另请注意,View的不同类型模型可能具有不相似的字段。我想我总是可以使用最小公分母并让数据哈希包含html,但我宁愿使用mustache模板。 最

javascript - 渲染主干 View 时如何防止图像闪烁?

我使用Backbone.js作为框架,在我看来我有一些小图像(要删除的垃圾桶、图标等)。当View重新呈现这些图像时闪烁。我已经通过为我不想闪烁的所有内容创建一个新View而不触发它们渲染来解决这个更大的图像。但我想知道是否有另一种方法可以在不将我的观点分解成一堆碎片的情况下做到这一点?这是我呈现我的观点的一般格式:window.SomeView=Backbone.View.extend({initialize:function(){this.model.bind('change',this.render,this);this.template=_.template($('#view-

javascript - 3D CSS 变换 : translateZ causes elements to disappear in Chrome

我正在使用Javascript在Chrome中操作CSS转换,我注意到当translateZ值变得太低(很远)时,元素将会消失。这似乎只有在有大量元素时才会发生。这似乎与元素的z-index有关。这是问题的一个例子:http://jsbin.com/iZAYaRI/26/edit将鼠标悬停在输出上以查看问题。有人知道为什么会这样吗?更新:看起来该元素并没有真正消失,而是移动了一千个像素左右。 最佳答案 在我的例子中,z平移属性大约为零。将我的零翻译从0更改为1解决了我的问题。在safari中运行的原始代码:transform:sca

javascript - 浏览器在尝试创建渲染上下文时会抛出错误吗?

下面的代码会不会抛出错误?varcanvas=document.createElement("canvas");varctx=canvas.getContext("somethingwrong");在chromium中,它只返回null。如果浏览器知道所请求的呈现上下文会怎样?(如“webgl”或“experimental-webgl”)是否有可能出现错误异常?在chromium中,我无法引发这种行为。换句话说:我是否需要将此代码包装在库中的try/catch中,以干净地检查渲染上下文?有没有办法将其具体化?例如。通过尝试在不同浏览器中截取代码并列出可能不同的结果的Web服务。

javascript - 渲染多杯咖啡的模式

我有一个task模型,它与user和project模型相关。当我创建/更新任务时,我需要在异步View中进行更新,不仅是任务更改/添加,还包括项目和用户信息(因为其中一些数据也可能更改)。我在Controller中有这个:defcreate@task=Task.new(params[:task])@project=Project.find(params[:project_id])respond_todo|format|if@task.saveformat.html{redirect_to@task,notice:'Taskwassuccessfullycreated.'}format.

javascript - 使用 React-Router,如何在不触发重新渲染的情况下更新 URL?

我有一个父组件,当URL与特定路径匹配时,它应该呈现另一个组件:constView:React.SFC=({....})=>{return(....}/>);};如果jobPath===/careers/:id一切正常,JobPanel.tsx将呈现。JobPanel.tsx有一个链接,当前将返回this.props.history.push(/careers){handleClose();}}>GoBack或{this.props.history.push('/careers/);handleClose();}}>GoBack问题是JobPanel应该使用此组件在页面内外进行转换:c

javascript - 浏览器渲染和 javascript 执行的同步/异步特性

我有一些处理需要几秒钟,所以我想在处理过程中添加一个视觉指示器。.processing{background-color:#ff0000;}Processing脚本:$("#mydiv").addClass("processing");//Dosomelongrunningprocessing$("#mydiv").removeClass("processing");我天真地以为类会应用到div上,UI会更新。但是,在浏览器(至少在Firefox中)运行它时,div永远不会突出显示。有人可以向我解释为什么我的div永远不会突出显示吗?添加类,进行处理,然后删除类;用户界面不会在此期间更

javascript - 将鼠标坐标转换为 3D 平面图

我正在使用javascript/jquery(基于DOM,而非Canvas)构建某种拖放应用程序。想法是能够在3D场景上拖动div(在3D中旋转的div)。它在2D平面上工作,问题是当我在3D中旋转场景时,对象位置不反射(reflect)实际鼠标位置,而是在3D中转换的坐标示例:EXEMPLEONJSFIDDLE我希望对象相对于鼠标的绝对位置移动。我这样计算鼠标位置:document.addEventListener(gestureMove,function(event){if(mouseDown==true){event.preventDefault();moveX=(event.p