相关疑难解决方法(0)

如何在特定索引(JavaScript)的数组中插入项?

我正在寻找一种JavaScript数组插入方法,其格式为:

arr.insert(index, item)
Run Code Online (Sandbox Code Playgroud)

最好是在jQuery中,但任何JavaScript实现都会在这一点上完成.

javascript arrays jquery insert

2709
推荐指数
23
解决办法
171万
查看次数

通用列表 - 移动列表中的项目

所以我有一个通用列表,一个oldIndex和一个newIndex值.

我想尽可能简单地将项目移动oldIndexnewIndex......

有什么建议?

注意

该项目应该在删除之前(newIndex - 1)newIndex 之前的项目之间结束.

.net c# generics list

139
推荐指数
6
解决办法
17万
查看次数

带有多个逗号分隔值的return语句

可能重复:
Javascript语法:逗号是什么意思?

这种模式会回归什么?它是如何工作的?

return myfunc(), myobj.myvar = someobj.prop, myobj

我之前没有遇到过这种模式,但一直在查看Bing Maps Ajax Control并且多次注意到这种模式.

据我了解,不会返回多个值.那么这种模式有什么作用呢?什么回来了?这种模式的好处是什么?

javascript

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

将自定义函数添加到Array.prototype中

我正在开发一个支持AJAX的asp.net应用程序.我刚刚为Array.prototype添加了一些方法

Array.prototype.doSomething = function(){
   ...
}
Run Code Online (Sandbox Code Playgroud)

这个解决方案对我有用,可以以"漂亮"的方式重用代码.

但是当我测试它与整个页面一起工作时,我遇到了问题.我们有一些自定义的ajax扩展器,并且它们开始表现为意外:一些控件在其内容或值周围显示"未定义".

可能是什么原因?我错过了修改标准对象原型的一些内容吗?

注意:我很确定在修改Array的原型时错误就开始了.它应该只与IE兼容.

javascript arrays internet-explorer

49
推荐指数
3
解决办法
5万
查看次数

通过对象键将数组项移到前面

所以我有一个对象数组;

[
    {
        "foo": 2,
        "bar": "test"
    },
    {
        "foo": 19,
        "bar": "value"
    },
    {
        "foo": 7,
        "bar": "temp"
    }
]
Run Code Online (Sandbox Code Playgroud)

我需要将具有特定值的对象移动foo到数组的开头.值始终在对象中,但不保证对象将在数组中.

所以在运行之后moveToFront(19);,我有以下内容:

[
    {
        "foo": 19,
        "bar": "value"
    },
    {
        "foo": 2,
        "bar": "test"
    },
    {
        "foo": 7,
        "bar": "temp"
    }
]
Run Code Online (Sandbox Code Playgroud)

我该怎么做呢?

javascript arrays

8
推荐指数
2
解决办法
7973
查看次数

在jQuery UI Sortable之后更新CollectionView内容的最佳方法?

感谢@ ghemton的safeClone方法,我已经能够在Ember.js中运行jQuery UI Sortable :Ember.js + jQuery UI Draggable Clone

一旦排序完成,我很难让Ember知道这个变化.现在,我splice按照将数组元素从一个数组位置移动到另一个数组位置的建议使用,集合中的项目移动到适当的位置.这工作正常,但我有窗口滚动的问题.

在这个jsfiddle,http://jsfiddle.net/chrisconley/g4aE6/,如果你滚动到底部,然后重新排序任何元素,窗口跳回到顶部.如果你把一个断点之间propertyWillChangepropertyDidChange,你可以看到,灰烬从视图瞬间,这是造成窗口跳回到顶端删除所有项目.

App.MySortableView = Em.CollectionView.extend({
  moveItem: function(fromIndex, toIndex){
    var items = this.get('content');
    this.propertyWillChange('content');
    item = items.splice(fromIndex, 1)[0];
    items.splice(toIndex, 0, item);
    this.propertyDidChange('content');
  }
});
Run Code Online (Sandbox Code Playgroud)

有没有办法在没有删除和更换整个集合的情况下通知Ember?

更新方案:

(感谢Christopher Swasey的回答)

App.MySortableView = Em.CollectionView.extend({
  moveItem: function(fromIndex, toIndex){
    var items = this.get('content');
    item = items.objectAt(fromIndex);
    items.removeAt(fromIndex);
    items.insertAt(toIndex, item);
  }
});
Run Code Online (Sandbox Code Playgroud)

这里有完整的例子:http://jsfiddle.net/chrisconley/NN35P/

javascript jquery-ui ember.js

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

角度标签 - 可排序/可移动

是否有任何Angular JS Tabs指令允许对它们重新排序(如浏览器的选项卡)

如果不是一个开始实施将是伟大的

使用angular-ui-bootstap

<tabset> 
    <tab ng-repeat="tab in vm.tabs" active="tab.active" sortable-tab> </tab> 
    <tab disabled="true" ng-click"vm.addNewTab()" class="nonSortable-addTab-plusButton"></tab> 
</tabset>
Run Code Online (Sandbox Code Playgroud)

如何让它们重新定位?

编辑:Bounty添加使用上面的原始tabset语法.

angularjs angularjs-directive

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

如何在集合中移动模型?

假设我Backbone.Collection有一些简单的模型:

var Library = Backbone.Collection.extend({
    model: Book
});

lib = new Library(
   [Book1, Book2, Book3, Book4, Book5, Book6]
]);
Run Code Online (Sandbox Code Playgroud)

如何在集合中移动模型 - 例如第5个到第2个位置?因此,不按模型字段排序,而只是手动更改排序顺序.

注意:我简化了模型Book1, ....他们当然Backbone.Model是s.

collections model backbone.js

2
推荐指数
1
解决办法
1995
查看次数

将 order 设置为 jquery sortable

我对无序列表 (ul) 使用 jquery draggble 函数,并面临在更改后获取项目顺序并设置页面加载顺序的问题。假设我们有以下代码:

<html>
   <head>
     <script src="http://code.jquery.com/jquery-latest.js"></script>
     <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js>  </script>
     <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script>
   <script>
      $(document).ready(function(){
            $('.secondblock').sortable({axis:'y'});

            $(".block").sortable({
            axis: 'y',
            update: function(event, ui) {// order changed
               var order = jQuery(this).sortable('toArray');
               // set this order to .secondblock

            }
         });
      });
  </script>

  </head>
  <body>
      <ul class="block" type="none">
           <li id = "one">1</li>
           <li id = "two">2</li>
           <li id = "three">3</li>
           <li id = "four">4</li>
           <li id = "five">5</li>
      </ul>
      <ul class="secondblock" type="none">
           <li id = "one">1</li>
           <li id = "two">2</li>
           <li id …
Run Code Online (Sandbox Code Playgroud)

javascript jquery

2
推荐指数
1
解决办法
5257
查看次数

将数组中的对象移动到结尾

我正在尝试找到一种方法将对象移动到数组的末尾

我有这个对象数组:

[{"id":"4","name":"Boaz"},{"id":"2","name":"Shareen"},{"id":"3","name":"Simon"},{"id":"1","name":"Miriam"}]
Run Code Online (Sandbox Code Playgroud)

假设我有一个id:3,或者一个位置:2.

有了这个我想把整套{"id":"3","name":"Simon"}移到最后

我尝试了很多东西,搜索和搜索,但我无法使它工作

javascript arrays jquery object

1
推荐指数
2
解决办法
4764
查看次数

对除一项之外的一组名称进行排序

考虑到我有一个如下所示的对象,其中可能有多个名称,并且“其他”可以出现在任何索引处,我如何对始终将“其他”作为第一个元素和其余名称的数组进行排序按字母顺序排序?

var friends = [
{ id: 1, name: 'Paul' },
{ id: 2, name: 'Mary' },
{ id: 3, name: 'The others' },
{ id: 4, name: 'John' }
];
Run Code Online (Sandbox Code Playgroud)

对于上面的示例数组,所需的结果将是:

[
   { id: 3, name: 'The others' }, 
   { id: 4, name: 'John' }, 
   { id: 2, name: 'Mary' }, 
   { id: 1, name: 'Paul' }
]
Run Code Online (Sandbox Code Playgroud)

javascript arrays sorting

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

Javascript - 更改数组元素的索引

我有一个数组

[1,2,3,4,5]

我想向右移动“2”(当时 1 个位置)或向左移动“2”

我们可以用 RxJS Operators 做到这一点吗?

javascript rxjs

0
推荐指数
1
解决办法
6041
查看次数

"+"和" - "运算符的问题

问题是-操作员不工作(在第8行).请参阅下面的代码:

array = [0,0,0,0,3,0,0,0,0],
n = 0;

for(var i = 0; i < array.length; i++){
    if(n < 9){ //the "n" variable there's only for don't crash the browser with a infinite loop
        if(array[i] == 3){
            array[i] = 0;
            array[i - 1] = 3; //I believe that here is the problem
        }
    }
n++;
}

console.log(array);
Run Code Online (Sandbox Code Playgroud)

所以... 我想将"3"值移动到数组的开头.但它只有在我使用+运算符(第8行)时才有效.因此,如果我使用+一个,"3"值将到达数组的末尾.

任何人都知道为什么-操作员在这种情况下不工作和+工作?

javascript algorithm

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