小编Ell*_*lle的帖子

localStorage数据持久性

我最近发现用户可以清除HTML5的localStorage值,这让我想知道......究竟是多么持久localStorage?如果Flash崩溃并擦除我的所有cookie,我会丢失localStorage数据吗?如果我的本地缓存被清除以便为浏览器更新让路怎么办?

我已经看到了这个答案,但它并没有解决浏览器崩溃,更新,缓存清除等问题.localStorage真的是真正的永久性,因为前面提到的答案似乎是有道理的吗?

javascript html5 local-storage

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

使用transform:scale来防止模糊渲染

我正在div使用transform属性进行扩展,但我希望保持其子(具有1px宽度或高度)相同的大小.我反算了它们.5,预期的结果是一个1px按2缩放的元素,然后是.5,应该最终返回1px,但它们结束了模糊2px.

这是缩放之前的方框:

.container {
    width: 200px;
    height: 200px;
    margin: 100px;
    background-color: #EEE;
    position: absolute;
}

.outline {
    position: absolute;
    background: #1899ef;
    z-index: 999999;
    opacity: 1 !important;
}

.outlineBottom, .outlineTop {
  width: 100%;
  height: 1px;
}

.outlineLeft, .outlineRight {
    height: 100%;
    width: 1px;
}

.outlineRight {
    right: 0px;
}

.outlineBottom {
    bottom: 0px;
}
Run Code Online (Sandbox Code Playgroud)
<div class="container">
    <div class="outline outlineTop"></div>
    <div class="outline outlineRight"></div>
    <div class="outline outlineBottom"></div>
    <div class="outline outlineLeft"></div>
</div> …
Run Code Online (Sandbox Code Playgroud)

html css3

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

在JavaScript中定义"嵌套"对象构造函数?

是否可以在另一个对象中定义一个对象?我在想这样的事情:

function MyObj(name) {
    this.name = name;

    function EmbeddedObj(id) {
        this.id = id;
    }
}
Run Code Online (Sandbox Code Playgroud)

然后我可以像这样创建一个EmbeddedObj:

var myEmbeddedObj = new MyObj.EmbeddedObj();
Run Code Online (Sandbox Code Playgroud)

奖励积分的Meme:对象!:○

javascript nested object

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

用Javascript移动光标位置?

我希望将插入符号正好位于其当前位置前方四个位置,以便我可以正确插入一个标签.我已经在插入符号的位置处获得了HTML插入,但是当我插入HTML时,插入符号被遗忘.我花了大约一个小时左右的时间看各种方法来做这件事,我已经尝试了很多,但我不能让他们中的任何一个为我工作.这是我尝试过的最新方法:

function moveCaret(input, distance) {
    if(input.setSelectionRange) {
        input.focus();
        input.setSelectionRange(distance, distance);
    } else if(input.createTextRange) {
        var range = input.createTextRange();
        range.collapse(true);
        range.moveEnd(distance);
        range.moveStart(distance);
        range.select();
    }
}
Run Code Online (Sandbox Code Playgroud)

它绝对没有 - 不移动插入符,抛出任何错误或任何东西.这让我感到困惑.是的,我知道上面的方法集(应该)将插入符号从指定节点的开头(即input)开始设置在某个位置,但即使这样也不起作用.那么,我究竟做错了什么,我该怎么做呢?


编辑:基于ov提供的链接,我已经设法将一些东西拼凑在一起,最终做了一些事情:抛出一个错误.好极了!这是新代码:

this.moveCaret = function(distance) {
    if(that.win.getSelection) {
        var range = that.win.getSelection().getRangeAt(0);
        range.setStart(range.startOffset + distance);
    } else if (that.win.document.selection) {
        var range = that.win.document.selection.createRange();
        range.setStart(range.startOffset + distance);
    }
}
Run Code Online (Sandbox Code Playgroud)

现在,这给出了错误Uncaught Error: NOT_FOUND_ERR: DOM Exception 8.有什么想法吗?

javascript caret contenteditable

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

为什么Math.prototype未定义?

我必须在这里遗漏一些东西,因为对我来说Math.prototype不确定的.为什么是这样?我试着这样做:

Math.prototype.randomRange = function(from, to){
    return Math.floor(Math.random() * (to - from + 1) + from);
}
Run Code Online (Sandbox Code Playgroud)

但反而必须做这样的事情:

Math.randomRange = function(from, to){
    return Math.floor(Math.random() * (to - from + 1) + from);
}
Run Code Online (Sandbox Code Playgroud)

但这感觉不对.是我还是应该以另一种方式做这件事?如果这是一个愚蠢或重复的问题,我很抱歉,但我找不到任何搜索结果(当我搜索"Math.prototype"时出现了两个问题,这有点奇怪).

javascript math prototype

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

如何在Javascript中将文本复制到剪贴板?

我想知道是否有任何方法可以将文本复制到剪贴板.我很清楚这个答案,但它已经超过三年了.从那时起有什么变化吗?

javascript clipboard

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

对象的默认功能?

是否可以在对象上设置默认函数,以便在调用myObj()该函数时执行?假设我有以下func对象

function func(_func) {
    this._func = _func;

    this.call = function() {
        alert("called a function");
        this._func();
    }
}

var test = new func(function() {
    // do something
});

test.call();
Run Code Online (Sandbox Code Playgroud)

我想test.call()简单地替换test().那可能吗?

javascript function object

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

数学上增加RGB颜色的温暖度

我正在寻找一种使 RGB 颜色“更暖”的方法。我最初尝试增加 RGB 颜色的 R 分量以使其更暖,但这产生了意想不到的结果。增加RGB颜色温暖度的正确方法是什么?

rgb colors

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

Array.push返回推送值?

有没有任何实质性的理由为什么修改Array.push()返回推送的对象而不是新数组的长度可能是一个坏主意?

我不知道这是否已经提出或被问过; Google搜索仅返回了与当前功能相关的大量问题Array.push().

以下是此功能的示例实现,请随时更正:

;(function() {
    var _push = Array.prototype.push;
    Array.prototype.push = function() {
        return this[_push.apply(this, arguments) - 1];
    }
}());
Run Code Online (Sandbox Code Playgroud)

然后你就可以做这样的事情:

var someArray = [],
    value = "hello world";

function someFunction(value, obj) {
    obj["someKey"] = value;
}

someFunction(value, someArray.push({}));
Run Code Online (Sandbox Code Playgroud)

例如,someFunction修改传入的对象作为第二个参数.现在的内容someArray[{"someKey": "hello world"}].

这种方法有什么缺点吗?

javascript arrays

6
推荐指数
5
解决办法
2万
查看次数

Sencha与jQuery Touch

哪一个是更好的选择?有更好的选择吗?哪个有更好的文档和社区?

jquery jqtouch sencha-touch

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