小编jul*_*bou的帖子

如何在JavaScript中实例化File对象?

FileJavaScript中有一个对象.我想实例化一个用于测试目的.

我试过了new File(),但是我收到了"非法构造函数"错误.

是否可以创建一个File对象?


文件对象参考:https://developer.mozilla.org/en/DOM/File

javascript upload file-upload

126
推荐指数
4
解决办法
23万
查看次数

html5 draggable隐藏原始元素

当开始使用HTML5 draggable属性拖动元素时,原始元素仍然可见,因此我最终得到两个可见的元素而不是一个.

如何只拖动可见的元素(原始元素应暂时隐藏).

<script>
  function startDrag() {
    // hide initial element
  }

  function endDrag() {
    // reset initial element
  }
</script>

<div class="draggable" draggable="true"
  ondragstart="startDrag(event)"
  ondragend="endDrag(event)"
></div>
Run Code Online (Sandbox Code Playgroud)

这是一个显示问题的jsfiddle https://jsfiddle.net/gjc5p4qp/

javascript html5 draggable html5-draggable

15
推荐指数
4
解决办法
8182
查看次数

Javascript正则表达式匹配正则表达式

我正在研究一个特殊的正则表达式来匹配一个javascript正则表达式.

现在我有这个正则表达式工作:

/\/(.*)?\/([i|g|m]+)?/
Run Code Online (Sandbox Code Playgroud)

例如:

'/^foo/'.match(/\/(.*)?\/([i|g|m]+)?/) => ["/^foo/", "^foo", undefined]
'/^foo/i'.match(/\/(.*)?\/([i|g|m]+)?/) => ["/^foo/i", "^foo", "i"]
Run Code Online (Sandbox Code Playgroud)

现在我需要使用这个正则表达式:

'^foo'.match(/\/(.*)?\/([i|g|m]+)?/) => ["^foo", "^foo", undefined]
Run Code Online (Sandbox Code Playgroud)

不幸的是,我以前的正则表达式不适用于那个.

有人可以帮我找到匹配这个例子的正则表达式(以及其他人):

'^foo'.match([a regex]) => ["^foo", "^foo", undefined]
Run Code Online (Sandbox Code Playgroud)

javascript regex

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

css中形状的混合模式

我想说我有一些圈子:

<circle class="first">&nbsp;</circle>
<circle class="second">&nbsp;</circle>
Run Code Online (Sandbox Code Playgroud)

使用以下css:

circle {
  border-radius: 50%;
  width: 100px;
  height: 100px;
  background: #000;
}
Run Code Online (Sandbox Code Playgroud)

如何重叠时能达到以下效果?

css圈重叠

最好是在css中,或用canvas元素.

css canvas css3 css-shapes

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

从Node.js vm模块中的console.log()访问日志

node.js vm模块中,我可以在另一个node.js进程中执行一些javascript.我想要实现的是能够捕获由vm运行的脚本中执行的日志.

例如,我想抓住"foobar"日志:

var vm = require('vm')

vm.runInThisContext('console.log("foobar");', 'myfile.vm');

// how can i get the "foobar" log?
Run Code Online (Sandbox Code Playgroud)

提前致谢

编辑:下面的答案很好,虽然有一个较短的版本:

function captureStdout(callback) {
    var output = '', old_write = process.stdout.write

    // start capture
    process.stdout.write = function(str, encoding, fd) {
        output += str
    }

    callback()

    // end capture
    process.stdout.write = old_write

    return output
}
Run Code Online (Sandbox Code Playgroud)

virtual-machine node.js

4
推荐指数
2
解决办法
2152
查看次数

在浮动框中截断文本并在悬停时完全显示它

我有以下html:

<div class="box">
  <div class="box-left">
    <p>Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet</p>
  </div>
  <div class="box-right">
    <button>Resource View</button>
    <button>Employee View</button>
    <button>Regular View</button>
  </div> 
</div>
Run Code Online (Sandbox Code Playgroud)

以下是默认情况下的外观:

在此输入图像描述

悬停文本时的外观(我们显示全文长度):

在此输入图像描述


更多信息:

  • 我正在使用文本省略来截断文本(请参阅此处)
  • 当文本悬停时,我们使用:hover选择器设置position:absolute为文本段落
  • 我们事先并不知道宽度.box-right,也没有宽度.box-left
  • .box 宽度等于窗口的宽度(所以它的变量)

实际上,我有这个使用CSS和Javascript的例子,javascript包括.box-left p在页面加载时设置元素宽度,使用:

$('.box-left p').css('width', $('.box').innerWidth() - $('.box-right').outerWidth())
Run Code Online (Sandbox Code Playgroud)

题:

  • 我想知道是否只有CSS解决方案?我试过display: table-cell没有成功.

我想做的事:

  • 截断文本.box-left以在一行上包含按钮和文本
  • 悬停文本时,显示全长

css css3 css-float

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

如何将数组转换为可能的最短字符串

我有以下数组(我正在使用JavaScript):

var arr = [2, 0, 0, 0, 12]
Run Code Online (Sandbox Code Playgroud)

(所述阵列的每个元件可以是间015.长度是固定的,5种元素.)

我想将此数组转换为可能的最短字符串.我的实际解决方案是将其转换为十六进制(base16)字符串:

var str = '2000c'
Run Code Online (Sandbox Code Playgroud)

有更好的解决方案吗?(我正在寻找JavaScript解决方案,如果可能的话没有任何库)

javascript base64 hex base

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