我即将开始使用基于表格的复杂布局(多年前编码)的网页.
我想做的一件事是将布局转换为带有div和span的正确CSS布局.
你能建议一个解决这类问题的好方法吗?我应该使用像Blueprint这样的CSS框架吗?只是进入并破解它直到它看起来正确?我已经大量使用Firebug和IE Developer Toolbar.
我已多次阅读Facebook的Canvas应用程序文档,但我很难说哪些功能仅适用于Canvas应用程序,哪些功能也适用于使用JavaScript SDK的非Facebook网站.
例如,Canvas文档通过Feed对话框和图形API提及书签,搜索和发布到新闻源.但是你可以通过使用Facebook登录API和Feed Dialog API在非Facebook网站上获得所有这些,而不是Canvas应用程序.
那么,Canvas的功能到底是什么?Canvas应用程序可以做什么普通网站不能做到的?
facebook facebook-graph-api facebook-javascript-sdk facebook-canvas
我正在使用StoreKit进行应用内购买.当用户按下"取消"按钮时,我发现API的行为很古怪.
例如,如果我在"确认您的应用内购买"屏幕上按"取消",我会按照我的预期获得SKPaymentTransactionStateFailed交易error.code == SKErrorPaymentCancelled.
但如果我按下Buy然后按取消,我就会收到Failed交易error.code == 0.这error.localizedDescription是"无法连接到iTunes Store"这显然是一个谎言.
将所有Failed交易视为可忽略的取消很有诱惑力,但我也可以清楚地看到,如果设备在飞机模式下处于离线状态,我会得到一个Failed没有警报弹出窗口的交易; 在这种情况下,我应该通知用户解释问题.
我注意到MKStoreKit假设所有失败都是取消.MKStoreManager的failedTransaction方法不会被调用; MKStoreObserver总是要求transactionCanceled所有Failed交易.该MKStoreManager.h意见建议没有错误消息的transactionCanceled,这是有道理的,但谁就会通知给用户的Failed非交易取消?
处理这些故障的最佳做法是什么?我应该吞下错误吗?始终显示错误,即使它是多余的?
关于void运算符的MDN文章提到了一种声明立即调用的函数表达式(IIFE)的巧妙方法.
void function() {
console.log('hello');
}();
// is the same as...
(function() {
console.log('hello');
})();Run Code Online (Sandbox Code Playgroud)
我觉得使用void这个看起来很不错.传统的IIFE有很多括号,我觉得这看起来很混乱.
然后我尝试使用箭头函数重写此代码.
void () => {
console.log('hello');
}();
Run Code Online (Sandbox Code Playgroud)
这不解析.Chrome在第1行显示"Uncaught SyntaxError:Unexpected token",其中定义了箭头函数.Firefox说,"SyntaxError:无效的箭头 - 函数参数(箭头函数周围的括号可能有帮助)".
它在调用函数时甚至不解析.
void () => {
console.log('hello');
};
Run Code Online (Sandbox Code Playgroud)
我已经尝试过阅读这个(包括其他SO问题,比如这一个和这一个).
我想这与箭头函数AssignmentExpressions有关...?但我迷失了试图遵循ECMA-262规范.
我对Java DeferredTask的文档感到有点困惑.我在这里阅读了Python文档:http://code.google.com/appengine/articles/deferred.html但我还不清楚我是如何使用Java版本的.
你能提供工作示例代码来启动DeferredTask来使用DatastoreService进行简单的写操作吗?
考虑这个测试脚本.
#!/bin/sh -x
rm -rf origin clone
git init origin
cd origin
echo foo > file
git add -A
git commit -m "initial commit"
git branch foo
cd ..
git clone origin clone
cd clone
git rev-parse --verify foo
Run Code Online (Sandbox Code Playgroud)
我们创建一个originrepo,创建一个名为fooclone的克隆,克隆repo,然后在克隆中,我们尝试验证该名称foo是否为有效对象git rev-parse --verify foo.
但是,当我运行它时,它说,"致命:需要一次修订",这对我没有任何意义.
我想它试图告诉我这foo不是一个分支名称,只origin/foo存在?但它显然适用于我git checkout foo.
总的来说,我要做的是事先验证它git checkout foo是否有效,而不是实际运行git checkout foo.我该怎么办?
我想在我的iOS应用程序中使用启动映像,而不是启动屏幕.(启动图像可以比启动屏幕更精确地定位设备; 没有办法使启动屏幕的行为与启动图像完全相同.)
如果您的iOS应用程序中没有启动屏幕,则iPad Pro呈现为屏幕分辨率为1024x768点宽.(要查看此内容,请创建一个新项目,删除其启动屏幕,然后在iPod Pro模拟器中启动它.)
有没有办法让iPad Pro在不使用启动屏幕的情况下在原生1366x1024点渲染?
考虑这个样本.
http://jsfiddle.net/dfabulich/ncbzz5zu/3/
<html>
<body>
<style>
.container {
position: relative;
width: 80%;
height: 100px;
border: 1px solid black;
}
@keyframes slide {
from { background-color: red; left: 0; }
to { background-color: blue; right: 0; }
}
.animated {
position: absolute;
width: 20%;
height: 100%;
top: 0;
background-color: red;
animation-duration: 3s;
animation-name: slide;
animation-iteration-count: infinite;
}
</style>
<div class=container>
<div class=animated>
</div></div>
Run Code Online (Sandbox Code Playgroud)
预期:当颜色从红色变为蓝色时,红色矩形应从左到右平滑地动画.
实际:在Chrome/Firefox中,红色矩形慢慢地将颜色变为紫色,然后从左到右传送而不动画,然后从紫色慢慢变为蓝色.在Safari中,矩形出现在右侧,从不从那里移动,同时从红色到蓝色动画.
为什么会这样?我该如何解决?(我需要在CSS中修复它...没有JS,没有jQuery.)
我正在为非程序员开发特定于域的语言(DSL).非程序员犯了很多语法错误:他们拼错了关键字,他们没有关闭括号,他们没有终止块,等等.
我正在使用ANTLR生成我的解析器; 它为处理RecognitionExceptions提供了一个很好的机制来改进错误处理.但我发现很难为我的DSL开发好的错误处理代码.
在这一点上,我正在考虑简化语言的方法,以便我更容易为用户提供高质量的错误消息,但我不确定如何解决这个问题.我想我想以某种方式减少错误的模糊性,但我不确定如何在语法中实现这个想法.
我可以通过哪些方式简化语言以改善用户的解析错误消息?
编辑:更新以澄清我对如何简化我的语言感兴趣,而不仅仅是ANTLR错误处理技巧.(虽然,谢谢你!)
我正在编写针对J2ME中Java Personal Basis Profile的代码.我需要测量AttributedString的宽度(以像素为单位).
在Java SE中,我从AttributedString 获取一个AttributedCharacterIterator并将其传递给FontMetrics #getStringBounds,但在J2ME PBP中,FontMetrics没有getStringBounds方法或任何其他接受CharacterIterator的方法.
我该怎么办?