我有一个div class ='messages'.我通过jQuery.append()向这个div添加日期以下是样式:
.messages {
border: 1px solid #dddddd;
padding:10px;
height: 400px;
overflow-x:visible;
overflow-y: scroll;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
margin-bottom:10px;
font-size:14px;
}
Run Code Online (Sandbox Code Playgroud)
对于autoscroll我使用这样的功能:
receiveMessage = function (name, message, type) {
//adding new message
$("#messages").append('<strong>' + name + ": " + '</strong>' + message + '<br>');
/autoscrolling to the bottom
$("#messages").animate({
scrollTop: $("#messages").height()
}, 300);
}
Run Code Online (Sandbox Code Playgroud)
大约有20条消息正常滚动,但在"挂起"后,新消息不会滚动.Chrome版本19.0.1084.56.我做错了什么?谢谢!
我正在尝试为mongodb设置密码以防止使用空登录和传递(默认设置)访问数据库.
我是statring mongo服务器:
sudo ./mongod
Run Code Online (Sandbox Code Playgroud)
启动客户:
./mongo
Run Code Online (Sandbox Code Playgroud)
设置密码:
use admin
db.addUser("root", "root")
exit
Run Code Online (Sandbox Code Playgroud)
输出是:
MongoDB shell version: 2.2.0
connecting to: test
> use admin
switched to db admin
> db.addUser("root", "root")
{
"user" : "root",
"readOnly" : false,
"pwd" : "2a8025f0885adad5a8ce0044070032b3",
"_id" : ObjectId("50c90b94e28c41a388104f64")
}
> exit
Run Code Online (Sandbox Code Playgroud)
不过,当我尝试使用空凭据进行身份验证时(我使用mViever管理界面),它仍然有效.否则,使用root/root访问不可用.我做错了什么?
还尝试用-auth参数启动mongo服务器,结果相同:
./mongod -auth
Run Code Online (Sandbox Code Playgroud)
UPD:用-auth参数启动后无法通过任何传递登录.获得:
Thu Dec 13 03:27:38 uncaught exception: error {
"$err" : "unauthorized db:admin ns:admin.system.users lock type:1 client:127.0.0.1",
"code" : 10057
}
Run Code Online (Sandbox Code Playgroud)
更新:我不知道发生了什么......
> db.auth("root","root");
1
> ^C
bye …Run Code Online (Sandbox Code Playgroud) 我试图save()从子实例调用super方法.
// ImageKeeper.js
'use strict';
module.exports = class ImageKeeper extends FileKeeper {
constructor(keeperPath, options) {
super(`/${keeperPath}`, options)
this.keeperPath = keeperPath;
}
save(filePath) {
return new Promise((resolve, reject) => {
this
.resolvePath(filePath)
.then(function(fileData) {
var filePath = fileData[0],
mime = fileData[1];
super.save(filePath, mime); // <-- GETTING ERROR HERE
})
.catch(function(err) {
reject(err)
})
})
}
}
// FileKeeper.js
'use strict';
module.exports = class FileKeeper {
constructor(keeperPath, options) {
this.storagePath = path.resolve(`${env.paths.storage}${keeperPath}`);
this.options = options;
}
save(filePath, mime) {
return …Run Code Online (Sandbox Code Playgroud) 假设我必须在同一页面上编辑一批相同类型的对象:
//-jade
form(action='', method='POST')
for each message_id in messages_ids
input(type='text', name='message', id='#{message_id}')
input(type='text', name='author', id='#{message_id}')
input(type='submit', value='Send')
Run Code Online (Sandbox Code Playgroud)
我知道我不能在后端处理这种形式'因为它的原因 - 它不会被发送到后端.但是,有办法吗?我想在后端得到这样的东西:
//js
for (var i = 0; i <= req.body.message.length; i++) {
console.log (
'ObjectID: ' + req.body.message[i].id, //-? null, just to show what I'm trying to get
'Message: ' + req.body.message[i],
'Author: ' + req.body.author[i]
);
}
Run Code Online (Sandbox Code Playgroud)
这是伪代码(它不会工作).那么,有什么想法吗?
PS我在没有AJAX的情况下如何做到这一点
我想知道,有没有开源的NodeJS灵魂?我的意思是准备生产,管理互联网商店的cms?提前致谢!
我正在使用带有时间插件的jQuery UI datepicker.这就是我在datepicker本身的页面上显示时间的方法:
21.06.2012 08:00
Run Code Online (Sandbox Code Playgroud)
我想在发送到后端之前将此时间转换为UNIX时间戳.我怎样才能做到这一点?我不需要在页面上显示UNIX时间,我只需要在发布之前进行转换.我试过了:
var d = Date.parse(value_of_datepicker);
Run Code Online (Sandbox Code Playgroud)
但没有运气.似乎日期应该以另一种方式形成.此外,我已经尝试了几个内置的datepicker函数,但所有这些函数都设置了日期显示视图.谢谢.
javascript jquery-ui datepicker datetimepicker unix-timestamp
我正在寻找有效的方法来逐步调试NodeJS服务器代码.此刻我使用了几十个console.log(),这非常困难.完美的工具是允许我检查堆栈中每个变量的值并逐行跟踪我的程序的工具.首选操作系统= MacOS/Linux.可能吗?
我正在用mongo编写一个简单的NodeJS应用程序.为了连接到mongo,我使用:
var mongo = require('mongodb'),
Server = mongo.Server,
Db = mongo.Db,
ObjectID = require('mongodb').ObjectID;
db.open(function(err,db) {...};
Run Code Online (Sandbox Code Playgroud)
所以,我有数据库"docs",我创建了一个名为"公司"的集合.现在它有4个对象(记录).我希望将此集合的全部内容作为数组获取并逐行显示:
//get companies list
app.get('/companies',function(req,res){
db.collection("companies",function(err,collection){
collection.find({},function(err, companies) {
companies.forEach(function(err,company){
console.log (company);
}
);
});
});
});
Run Code Online (Sandbox Code Playgroud)
但是,Node返回了我这样的错误:
TypeError: Object #<Cursor> has no method 'forEach'
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?提前致谢.
我想知道是否有机会在iOS上运行Node.JS以在桌面上进行开发?我肯定意识到我必须使用越狱iPad安装节点或mongodb.我唯一发现的是具有FTP/SSH支持的优秀代码编辑Diet Coda,但不多了.如何在iPad上的"真实"终端中获取节点,在某些端口上启动我的.js文件等?
Ps我不是cloud9的忠实粉丝,因为它需要互联网连接,而且此时只支持0.6节点
找到了解决方案:通过ssh连接到我的服务器并在控制台中开发我的应用程序.但它需要互联网连接,这并不好.
我正在使用SequelizeORM.这是我的用户模型:
###
User model
###
User = exports.User = globals.sequelize.define "User",
username: globals.Sequelize.STRING
email:
type: globals.Sequelize.STRING
validate:
isEmail: true
hash: globals.Sequelize.STRING
salt: globals.Sequelize.STRING(512)
fname: globals.Sequelize.STRING
lname: globals.Sequelize.STRING
country: globals.Sequelize.STRING
Run Code Online (Sandbox Code Playgroud)
我正在保存用户:
globals.models.User.findOrCreate
username: "johny"
password: "pass"
email: "johny93[###]example.com"
.success (user, created)->
console.log user.values
res.send 200
.error ->
console.log err # how to catch this?
res.send 502
Run Code Online (Sandbox Code Playgroud)
如果电子邮件有效(电子邮件:"johny93@example.com"),一切都很有效.但如果电子邮件验证失败(如上例所示),则会出现插入错误.如何捕获错误类型?.error方法无法获取任何错误参数.
node.js ×6
javascript ×3
mongodb ×2
arrays ×1
css ×1
datepicker ×1
debugging ×1
e-commerce ×1
ecmascript-6 ×1
es6-promise ×1
express ×1
forms ×1
inheritance ×1
ios ×1
ipad ×1
jailbreak ×1
jquery ×1
jquery-ui ×1
json ×1
mysql ×1
orm ×1
passwords ×1
scope ×1
scroll ×1
scrolltop ×1
sequelize.js ×1
stack ×1
super ×1
terminal ×1
trace ×1