查看doT.js源代码:
https://raw.github.com/olado/doT/master/doT.js
这是做什么的?
(function(){ return this || (0,eval)('this'); }()).doT = doT;
Run Code Online (Sandbox Code Playgroud)
对我来说,看起来它正在创建一个全局变量,window.doT.如果这就是它的全部,那么为什么不呢:
window.doT = doT;
Run Code Online (Sandbox Code Playgroud)
?
我想在HTML中嵌入JSON.我发现的最优雅的解决方案是使用script-tag和mime媒体类型application/json.
<script id="data" type="application/json">
{
"foo" : "bar"
}
</script>
Run Code Online (Sandbox Code Playgroud)
这是嵌入JSON的标准方法吗?如果没有,上述解决方案是否有任何风险?
使用内联JSON(而不是JSON-P服务)的原因:
[更新]嵌入json的原因.
我有一个画廊小部件,用于流量非常高的网站.画廊可以包含100张或更多图像.我一次只显示一个图像,其余图像将延迟加载.但是,所有图像的信息(图像src)将在页面加载的html中呈现.有各种方法在html中呈现图像信息.而不是使用JSON我也可以使用html数据属性,如下所示:
<li class="image" data-src="image-path.jpg">
<!-- image tag will be created here using javascript -->
</li>
Run Code Online (Sandbox Code Playgroud)
将导致:
<li class="image image-loaded" data-src="image-path.jpg">
<img src="image-path.jpg" />
</li>
Run Code Online (Sandbox Code Playgroud)
上述解决方案的缺点是额外的标记.我宁愿使用JSON和JavaScript的模板引擎如doT.js.
我在BroadcastReceiver(电话状态监听器)中使用以下代码来启用免提电话:
final Handler mHandler = new Handler();
mHandler.postDelayed(new Runnable() {
@Override
public void run() {
AudioManager audioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
audioManager.setMode(AudioManager.MODE_IN_CALL);
audioManager.setSpeakerphoneOn(true);
}
}, 500);
Run Code Online (Sandbox Code Playgroud)
当通过我的应用程序启动新的拨出电话时会发生这种情况.当呼叫断开时,我关闭扬声器电话:
AudioManager audioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
audioManager.setMode(AudioManager.MODE_NORMAL);
audioManager.setSpeakerphoneOn(false);
Run Code Online (Sandbox Code Playgroud)
这一切似乎都很好......第一次.之后,我手机的音频流似乎被搞乱了.后续调用非常安静,即使是从我的应用程序代码外部调用(不触发上述设置).我可以随意看回来的音频,但我不确定是什么导致它返回.
关于我可能做错的任何想法?是否有我不知道的Android错误?如何避免为后续呼叫静音我的音频?
编辑:我正在测试Galaxy S4.
假设我有这样的数据结构:
{ list: [ {
name: "1",
children: [{
name: "1.1",
children: []
},
{
name: "1.2",
children: [{
name: "1.2.1",
children: []
}
]
}
]
},
{
name: "2",
children: [{
name: "2.1",
children: [{
name: "2.1.1",
children: []
},
{
name: "2.1.2",
children: []
},
{
name: "2.1.3",
children: []
}
]
},
{
name: "2.2",
children: []
},
{
name: "2.3",
children: []
}
]
},
{
name: "3",
children: [{
name: "3.1",
children: []
} …Run Code Online (Sandbox Code Playgroud) 我正在使用Picasso从服务器获取图像并在viewpager中显示,但是我得到一些奇怪的错误,我的一些图像没有显示,当我静态加载图像时它们正在显示但是当从服务器加载图像时他们消失了,尤其是在3岁之后.
这是我的ViewPagerAdapter.java:
public Object instantiateItem(final ViewGroup container, int position) {
layoutInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View itemView = layoutInflater.inflate(R.layout.viewpager_item, container, false);
/**
* Loading the image view
*/
// Locate the ImageView in viewpager_item.xml
ImageView sliderItem = (ImageView) itemView.findViewById(R.id.viewpagerImageView1);
// Capture position and set to the ImageView
/* if(requestCreatorListIterator.hasNext()) {
requestCreatorListIterator.next().into(sliderItem);
}*/
slider[position].into(sliderItem);
//sliderItem.setImageResource(slider[position]);
// Add viewpager_item.xml to ViewPager
((ViewPager) container).addView(itemView);
//http://stackoverflow.com/questions/21368693/how-to-do-circular-scrolling-on-viewpager
((ViewPager) container).addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public …Run Code Online (Sandbox Code Playgroud) 嗨,我想知道如何在dot.js模板引擎中渲染输出.我认为这是关于nodejs模板的一般性问题.(阅读评论以获取更多信息).我选择这个模板引擎而不是jade或ejs的原因是因为它似乎是最快的引擎.
这是我的app.js:
var express = require('express'),
app = express.createServer(),
doT = require('doT'),
pub = __dirname + '/public',
view = __dirname + '/views';
app.configure(function(){
app.set('views', view);
app.set('view options', {layout: false});
app.set('view engine', 'dot');
app.use(app.router);
});
app.register('.html', {
compile: function(str, opts){
return function(locals){
return str;
}
}
});
app.get('/', function(req, res){
//This is where I am trying to send data to the front end....
res.render('index.html', { output: 'someStuff' });
});
Run Code Online (Sandbox Code Playgroud)
这是我的HTML:
<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8'>
<title>Index</title>
</head>
<body>
//This is …Run Code Online (Sandbox Code Playgroud) 我有一个看起来像这样的doT.js模板:
{{?it.books.length }}
{{~it.books :value}}
<li>
<article class='Teaser'>
<a href='{{=value.url}}' title='{{=value.title}}'>
<img src='{{=value.image}}' />
</a>
<h3>
<a href='{{=value.url}}' title='{{=value.title}}'>{{=value.title}}</a>
</h3>
</article>
</li>
// this should only be rendered every 3rd time
<br class='clear' />
{{~}}
{{?}}
Run Code Online (Sandbox Code Playgroud)
最后的br-Tag应该每三次渲染一次.我该怎么做呢?
注意:这只是IE中的一个问题.
如何强制textarea垂直填充table-cell div?我已经应用于height: 100%所有父元素,但textarea仍然保持其默认高度.
截图:

我的问题的例子:JSFiddle
示例代码:
HTML
<div class="table">
<div class="row">
<div class="col col-sm">
<div class="thumbnail">Thumbnail</div>
</div>
<div class="col col-lg">
<textarea>Text area</textarea>
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
CSS
* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.table {
display: table;
width: 100%;
height: 100%;
}
.row {
display: table-row;
height: 100%;
}
.col {
display: table-cell;
border: 1px dashed #FF0000;
padding: 5px;
vertical-align: top;
height: 100%;
}
.col-sm {
width: 30%;
}
.col-lg {
width: 70%;
} …Run Code Online (Sandbox Code Playgroud) 我是Node的新手,我正在尝试用ExpressJS(http://expressjs.com/)创建一个MVC应用程序.我在GitHub上使用与MVC示例(https://github.com/visionmedia/express/tree/master/examples/mvc)相同的文件夹结构.
在我的控制器文件夹中,我有2个文件夹:main和system.我想要的是在/controllers/system/index.js中定义一个基本控制器,并让/controllers/main/index.js继承系统控制器.每个其他模块都将扩展系统并覆盖一些函数来生成页面.
在另一个教程中,我发现了以下代码.
Base.js
var _ = require("underscore");
module.exports = {
name: "base",
extend: function(child) {
return _.extend({}, this, child);
},
run: function(req, res, next) {
}
};
Run Code Online (Sandbox Code Playgroud)
Home.js
var BaseController = require("./Base"),
View = require("../views/Base"),
model = new (require("../models/ContentModel"));
module.exports = BaseController.extend({
name: "Home",
content: null,
run: function(req, res, next) {
model.setDB(req.db);
var self = this;
this.getContent(function() {
var v = new View(res, 'home');
v.render(self.content);
})
},
getContent: function(callback) {
var self = this;
this.content …Run Code Online (Sandbox Code Playgroud) 我正在寻找一个javascript模板引擎,它在大型js应用程序中使用时性能良好,也非常适合移动应用程序.所以我已经完成了各种jsPerf测试.似乎有很多显示出不同的结果,并且很难找出哪个是标准测试.
有人可以指导我一个标准的jsPerf,我可以参考,还应该包括以下模板灰尘,下划线,hogan,胡子,把手.
根据我的观察,dot.js是一个具有良好渲染速度的常量表演者,但它对于大型应用程序是否足够成熟?
什么是jsPerf测试中显示的"with"和"no with"(特定于underscore.js)?有人可以解释一下.
在所有的测试中,我看到流行的模板,如小胡子,把手,灰尘,hogan等似乎落后于其他模板的性能,所以为什么人们使用它们而忽略了最佳表现者,是因为这些模板引擎的成熟度?
提前致谢
我最难找到有关我需要的信息.我想我不是在寻找合适的地方,因为这是非常基本的.无论如何.
有人在某处创建了一个Google表格,任何人都可以访问链接.我想检索给定单元格的值.
我希望能够从一个简单的网页(或PHP中的服务器端,但最好是JS)在JS中执行以下操作:
AGoogleApiIHopeExists.setApiKey("<MY_API_KEY");
var value = AGoogleApiIHopeExists
.getSheet("AJEIDNNS6886SDHSKN67HBS7BA6SD555DSHD")
.getTab("MyTabInsideMySheet")
.getCell("B:17");
Run Code Online (Sandbox Code Playgroud)
我觉得这有可能让我有点天真......
如果没有,我应该在哪里寻找更多信息?
javascript php google-api google-sheets google-spreadsheet-api