小编Sha*_*aoz的帖子

javascript中div的随机位置

我试图让Divs随机出现在网页上的任何地方使用javascript.因此div出现然后消失,然后另一个div出现在页面上的其他地方然后消失,然后另一个div再次出现在页面上的另一个随机点然后消失,依此类推.我不确定如何生成像素的随机单位或用于生成随机位置的技术.

我怎么做?这是我的代码:

var currentDivPosition = myDiv.offset(),
    myDivWidth = myDiv.width(),
    myDivHeight = myDiv.height(),
            var myDiv = $('<div>'),
    finalDivPositionTop, finalDivPositionLeft;

myDiv.attr({ id: 'myDivId', class: 'myDivClass' }); // already defined with position: absolute is CSS file.

// Set new position     
finalDivPositionTop = currentDivPosition.top + Math.floor( Math.random() * 100 );
finalDivPositionLeft = currentDivPosition.left + Math.floor( Math.random() * 100 );

myDiv.css({ // Set div position
  top: finalDivPositionTop,
  left: finalDivPositionLeft
});

$('body').append(myDiv);

myDiv.text('My position is: ' + finalDivPositionTop + ', ' + finalDivPositionLeft); 

myDiv.fadeIn(500);

setTimeout(function(){

  myDiv.fadeOut(500); …
Run Code Online (Sandbox Code Playgroud)

javascript jquery position positioning

11
推荐指数
1
解决办法
6万
查看次数

apply()的这种用法在Javascript中意味着什么

请问,有人可以告诉我this.init.apply(this, arguments)下面的代码做了什么吗?

我理解apply()一般情况下是什么,但在下面的代码中,它在那里做了什么?

var Class = function() {

    var klass = function() {
        this.init.apply(this, arguments); //I don't really get this bit...
    };

    klass.prototype.init = function(){};

    return klass;
};

var Person = new Class;

//Usage
var someone =  new Person;
Run Code Online (Sandbox Code Playgroud)

我看到很多人都在使用它.我已经知道它做了什么,但不能真正把它放在手上,所以我需要更多光线.

我在JS上升了一个级别,所以我想知道它的一切,而不仅仅是简单的'Hello world'级别.

非常感谢

javascript jquery web-applications

9
推荐指数
1
解决办法
2147
查看次数

这在javascript中是什么:"var var1 = var1 || []"

我只是想增加我的核心JavaScript知识.

有时我看到这个陈述,但我不知道它的作用:

var var1 = var1 || [];
Run Code Online (Sandbox Code Playgroud)

它意味着什么和/或它是什么,以及如何使用它?

谢谢.

javascript

8
推荐指数
4
解决办法
1713
查看次数

图例标记和Chrome

我到处都看,但无济于事.

我得到了<legend>一个表单,除了Chrome之外,它在每个浏览器中显示我想要的内容.它就像它位于fieldset之外,或者就像它位于下一个元素之上.这非常烦人.我甚至不能把利润放在上面.

为什么它以这种方式显示?

有解决方法吗?

HTML:

  <fieldset class="col-12-box-bottom add-extras">
    <legend class="plus">Add Promotion Code</legend>
    <ul id="promo-fields">
      <li><input class="field-small" type="text" /></li> 
      <li><button class="but-sec" type="submit">Apply</button></li>
    </ul>
  </fieldset>
Run Code Online (Sandbox Code Playgroud)

CSS:

.add-extras legend{
    width: 260px;
    height: 0px;
    border: 1px solid red;
    display: block;
    margin-top: 10px;
}
.add-extras fieldset{
    position: relative;
}
.add-extras ul{
    padding: 0 0 20px 0 !important;
    overflow: hidden;
}
.add-extras li{
    list-style-type: none;
    float: left;
    margin: 0 18px 0 0;
}
.add-extras li:last-child a{
    color: #afafaf;
    display: block;
    margin: 27px 0px 0 …
Run Code Online (Sandbox Code Playgroud)

html css webkit google-chrome legend

8
推荐指数
1
解决办法
1万
查看次数

在Backbone中,this.model是未定义的,为什么?

我到处寻找答案,但对我发现的东西不满意.

问题是,我正在从Addy Osmani做一个教程,在Backbone中制作一个'Todo'应用程序,但当我看到控制台时,我得到一个错误说this.model is undefined.

我甚至试过这个SO回答Backbone模型错误显示在控制台中,但我仍然得到相同的错误.请告诉我有什么问题.

顺便说一句,什么是this.modelthis.collection?我有一个想法,他们参考Backbone.Model,Backbone.Collection但他们如何工作?我问这是因为在另一个教程this.collectionthis.model.models也是不确定的,当我明确的ModelCollection.

非常感谢

JS:

//Model
var Todo = Backbone.Model.extend({

  defaults: {
    title: 'Enter title here',
    completed: true
  },

  validate: function(attrs) {
    if (attrs.title === undefined) {
        return 'Remember to enter a title';
    }
  },

  initialize: function() {
    console.log('This model has been initialized');

    this.on('change:title', function() {
        console.log('-Title values for this model have changed');
    });

    this.on('invalid', function(model, …
Run Code Online (Sandbox Code Playgroud)

javascript backbone.js backbone-views

8
推荐指数
1
解决办法
1万
查看次数

检测浏览器窗口使用Javascript最大化/最小化

当用户单击浏览器的Maximized/Restore Down或Minimized按钮时,有没有办法用javascript跟踪这些事件?是否有适当的事件或财产可供使用?

我希望当用户点击浏览器右上角的"最大化"按钮时,网页应该延伸到特定宽度,当浏览器处于可调整大小模式时,网页可以调整大小.

请有人帮帮我吗?我不介意javascript或jquery.

提前致谢.

javascript maximize-window

7
推荐指数
1
解决办法
3万
查看次数

gRaphael Js:我在哪里可以找到生成数据图表的教程(饼图,条形图等)

我在哪里可以找到使用gRaphael在网络上生成数据表示的教程?似乎没有在线文档.

非常感谢

javascript graphael

7
推荐指数
1
解决办法
2696
查看次数

Angular js foreach只返回数组中的最后一项

我正在尝试从JSON返回每个项目对象并使用它来评估其值angular.forEach(),但只返回最后一项.由于我不能进行任何评估.有趣的是,如果我这样做console.log(),它会逐一显示每个项目.

我如何获得每件商品并对其进行评估?

如果你知道更好的方法,请教我.

JS(angularjs):

angular.module('bLiApp')
  .controller('AddDataCtrl', ['$scope', 'DataService', function ($scope, DataService) {

    DataService.getItems().success(function(data) {

      $scope.items = data.category.items;

      angular.forEach($scope.items, function(item) {

        // This is where I'm having problem with return data...
        if (item.amount < 600) {
          $scope.amountchecker = 'low';
        } else if (item.amount >= 600 && item.amount <= 650) {
          $scope.amountchecker = 'average';
        } else if (item.amount > 650) {
          $scope.amountchecker = 'too high';
        }

      });
    });
  }]);
Run Code Online (Sandbox Code Playgroud)

HTML(angularjs):

<div class="add-data" ng-controller="AddDataCtrl">
  <div class="data-box clearfix" ng-repeat="item in …
Run Code Online (Sandbox Code Playgroud)

javascript foreach angularjs angularjs-scope

7
推荐指数
1
解决办法
3万
查看次数

在javascript中使用for循环定义中的arr [i]和arr.length之间的区别

我遇到了一些我从未见过的东西,我喜欢它.检查以下示例:

var arr = ['un', 'deux', 'trois', 'quatre', 'cinq', 'six', 'sept'];

for(var i = 0; arr[i]; i++){
  console.log( arr[i] );
}
Run Code Online (Sandbox Code Playgroud)

代替:

for(var i = 0; i < arr.length; i++){
  console.log( arr[i] );
}
Run Code Online (Sandbox Code Playgroud)

但是它们都实现了相同的结果,即输出数组列表.

我的问题是,在for循环声明中使用'arr [i]'和'arr.length'之间的区别(或相似性)是什么?

非常感谢

javascript

6
推荐指数
1
解决办法
2270
查看次数

ReferenceError:无法使用require.js中的jasmine找到变量:define at ... with'grunt test'

我有点困惑.在我的小项目中,我使用的是Jasmine,Require.js,Phantomjs和Grunt(所有这些都来自Yeoman).所以当grunt test在终端中运行我时,我收到错误:

>> ReferenceError: Can't find variable: define at 
>> test/spec/testSpec.js:15

Warning: No specs executed, is there a configuration error? Use --force to continue.

Aborted due to warnings.
Run Code Online (Sandbox Code Playgroud)

但是当我在浏览器中执行测试时,测试很顺利......

这是我简单的测试规范:

define(['spec/test'], function(Test) {

  describe('Test for unit-test', function() {
    describe('Test namespace', function() {
      it('should be defined', function() {
        expect(Test).toBeDefined();
      });
    });
  });

});
Run Code Online (Sandbox Code Playgroud)

模块:

define([], function () {
  var Test = {};

  return Test;
});
Run Code Online (Sandbox Code Playgroud)

有人可以帮我解决这个问题吗?

非常感谢

javascript requirejs jasmine phantomjs gruntjs

5
推荐指数
1
解决办法
5504
查看次数