我写了一些jQuery代码,其中我在屏幕上获取图像的宽度并将它们存储在变量中.然后我在控制台中记录了该变量以查看它的值.当页面第一次加载时,它显示正确的值,但是如果我按F5,它将显示0作为宽度.
这是HTML:
<body>
<img src="img1.jpg" alt="image">
<img src="img1.jpg" alt="image">
<script type="text/javascript" src="script.js"></script>
</body>
Run Code Online (Sandbox Code Playgroud)
这是jQuery代码(script.js):
jQuery(document).ready(function($) {
var imgs = $('img');
var width = imgs[0].width;
console.log(width);
});
Run Code Online (Sandbox Code Playgroud)
600第一次加载页面时会显示控制台,但是当我按下F5时会显示0.为什么会这样?
可能重复:
如何查找sizeof(指向数组的指针)
我声明了一个像这样的动态数组:
int *arr = new int[n]; //n is entered by user
Run Code Online (Sandbox Code Playgroud)
然后用它来查找数组的长度:
int len = sizeof(arr)/sizeof(int);
Run Code Online (Sandbox Code Playgroud)
它给len作为1代替n.为什么会这样?
我正在尝试这里给出的backbone.js示例,然后尝试自己编写一些代码.
由于某种原因,我附加到事件'click p'的事件处理程序不起作用.单击段落标记时,为什么"突出显示"功能不执行?
var ItemView = Backbone.View.extend({
tagName : 'p',
events: {
'click p': 'highlight'
},
initialize: function(){
console.log("An object of ItemView was created");
_.bindAll(this, 'render', 'highlight');
this.render();
},
render: function(){
this.$el.text(this.model.get('content'));
$('body').append(this.$el);
return this;
},
highlight: function(){
console.log('clicked');
}
});
Run Code Online (Sandbox Code Playgroud) 执行时此代码显示预期输出,但最后打印segmentation fault (core dumped):
string str[4] = {
"Home",
"Office",
"Table",
"Bar"
};
for (int i = 0; i<5; i++)
{
cout << str[i] << "\n";
}
Run Code Online (Sandbox Code Playgroud)
输出:
Home
Office
Table
Bar
Segmentation fault (core dumped)
Run Code Online (Sandbox Code Playgroud)
分段错误(核心转储)的重要性是什么?我搜索了,当你试图访问未分配的内存时,似乎发生了这样的错误,所以,上面的代码出了什么问题?
我有这个基本的快递应用程序:
var express = require('express');
var app = express();
var PORT = 3000;
var through = require('through');
function write(buf) {
console.log('writing...');
this.queue('okkkk');
}
function end() {
this.queue(null);
}
var str = through(write, end);
/* routes */
app.get('/', function(req, res){
res.send("Hello!");
})
app.post('/stream', function(req, res){
var s = req.pipe(str).pipe(res);
s.on('finish', function() {
console.log('all writes are now complete.'); // printed the first time
});
});
/* listen */
app.listen(PORT, function () {
console.log('listening on port ' + PORT + '...');
});
Run Code Online (Sandbox Code Playgroud)
当我 …
我正在尝试使用 Java 客户端列出 Google 云存储桶的 ACL。我正在这样创建客户端:
// create client
GoogleCredential credential = GoogleCredential.fromStream(jsonCredentialsString));
if(credential.createScopedRequired()) {
credential = credential.createScoped(StorageScopes.all());
}
HttpTransport httpTransport = GoogleNetHttpTransport.newTrustedTransport();
JsonFactory jsonFactory = JacksonFactory.getDefaultInstance();
return new Storage.Builder(httpTransport, jsonFactory, credential)
.setApplicationName("app")
.build();
Run Code Online (Sandbox Code Playgroud)
现在使用这个客户端,我得到200 OK来执行请求,但在运行请求时Buckets.List得到403Storage.BucketAccessControls.List错误。
我正在使用服务帐户凭据。这是我得到的错误
com.google.api.client.googleapis.json.GoogleJsonResponseException: 403 Forbidden
{
"code" : 403,
"errors" : [ {
"domain" : "global",
"message" : "Forbidden",
"reason" : "forbidden"
} ],
"message" : "Forbidden"
}
Run Code Online (Sandbox Code Playgroud)
在这种情况下验证请求的正确方法是什么?
(这里给出的API参考:http://docs.angularjs.org/api分为几个模块.每个模块都有它的指令集,服务,过滤器.
我想知道这些术语(即指令,服务,模块等)的含义以及它们在使用angularJS制作的典型网络应用程序中扮演的角色是什么?
javascript rest web-applications javascript-framework angularjs
为什么这不起作用?
<button onclick = "function(){alert('Hello');}">press me</button>
Run Code Online (Sandbox Code Playgroud)
这样做:
<button onclick = "alert('Hello');">press me</button>
Run Code Online (Sandbox Code Playgroud) 这里有一些例子.
// case 1:
var obj1 = {msg : 'Hello'};
var obj2 = obj1;
obj2.msg = "Hi!"; //overwrites
alert(obj1.msg); //=>'Hi!'
// case 2:
var obj1 = {msg : 'Hello'};
var obj2 = Object.create(obj1);
obj2.msg = "Hi!"; //does not overwrite
alert(obj1.msg); //=>'Hello'
// case 3:
var obj1 = {data: { msg : 'Hello'}}
var obj2 = Object.create(obj1);
obj2.data.msg = "Hi!"; //overwrites, Why?
alert(obj1.data.msg); //=>'Hi!'
Run Code Online (Sandbox Code Playgroud)
我认为Object.create()只是让两者都指向相同的原型,而赋值使得两个对象指向相同的位置(不仅仅是原型).
但那么为什么在案例3中数据对象被覆盖?
我有以下代码使用async.js
var async = require('async');
var A = [];
for(var i = 1; i < 100; i++)
A.push(i);
async.eachSeries(A, function(item) {
console.log(item);
});
Run Code Online (Sandbox Code Playgroud)
我希望这能打印从1到100的数字,但是当我运行它时,输出就是 1
但是,如果我使用each()而不是eachSeries()它打印所有数字.
那么,为什么代码不工作而eachSeries()只是一个串行版本each()?
javascript ×5
c++ ×2
node.js ×2
angularjs ×1
arrays ×1
async.js ×1
asynchronous ×1
backbone.js ×1
dom ×1
ecmascript-5 ×1
express ×1
html ×1
jquery ×1
linux ×1
onclick ×1
rest ×1
stream ×1
width ×1