小编Wil*_*ger的帖子

鼠标悬停在事件上时检索字符位置

我正在寻找一种方法来在将鼠标指针移动到包含文本的div上时检索字符位置.

所以基本上,如果这是文本:

敏捷的棕色狐狸跳过了懒狗

然后我将鼠标移到第一个'b'('褐色')上,然后我基本上希望能够在mouseover事件中返回'b'的位置.(在这种情况下,我需要得到值10,假设从位置0开始.)

(哦,如果它有帮助,我可以使用等宽字体的解决方案.我并不太关心角色在给定位置的'价值'.就像,当我将值移到'q',然后我不在乎知道它是否真的是'q',但我想知道鼠标指针当前正在移动到第5个字符上.)

javascript

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

JSON中的结构化文本

我一直在寻找一种方法来捕获JSON中的结构化文本(部分,段落,重点,列表等),但我还没有找到任何东西.有什么建议?(Markdown克服了我的想法,但那里可能会有更好的东西.)

text json

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

Scala中的动态提取器

我不喜欢提取器的一个原因是它们不能有参数.所以我不能像以下那样有提取器Param:

req match { case Param("foo")(foo) => … }
Run Code Online (Sandbox Code Playgroud)

动态提取器?

这是不幸的,我希望它会在某一天改变,但是今天早上我想通过使用动态特性来解决它.

object Params extends Dynamic {
  def selectDynamic(name: String) = new {
    def unapply(params: Map[String, String]): Option[String] = params.get(name)
  }
}
Run Code Online (Sandbox Code Playgroud)

...希望这会允许我在模式匹配语句中使用Params,如下所示:

req match { case Params.Foo(value) => 
  // matching Map("Foo" -> "Bar"), extracting "Bar" in value
Run Code Online (Sandbox Code Playgroud)

它不起作用

......但它不起作用.似乎编译器仍然感到困惑.

scala> Map("Foo" -> "bar") match { case Params.Foo(value) => value }
<console>:10: error: value applyDynamic is not a member of object Params
error after rewriting to Params.<applyDynamic: error>("Foo")
possible …
Run Code Online (Sandbox Code Playgroud)

scala

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

在参数化类中混合通用特征而不复制类型参数

让我们假设我想创建一个可以混入任何Traversable [T]的特征.最后,我希望能够说出这样的话:

val m = Map("name" -> "foo") with MoreFilterOperations
Run Code Online (Sandbox Code Playgroud)

并且在MoreFilterOperations上有方法,这些方法以Traversable提供的任何东西表示,例如:

def filterFirstTwo(f: (T) => Boolean) = filter(f) take 2
Run Code Online (Sandbox Code Playgroud)

但是,问题显然是T未定义为MoreFilterOperations上的类型参数.一旦我这样做,它当然是可行的,但是我的代码会读到:

val m = Map("name" -> "foo") with MoreFilterOperations[(String,String)]
Run Code Online (Sandbox Code Playgroud)

或者如果我定义了这种类型的变量:

var m2: Map[String,String] with MoreFilterOperations[(String,String)] = ...
Run Code Online (Sandbox Code Playgroud)

这是我的口味冗长的方式.我希望以这样的方式定义特征,我可以将后者写成:

var m2: Map[String,String] with MoreFilterOperations
Run Code Online (Sandbox Code Playgroud)

我尝试过自我类型,抽象类型成员,但它没有产生任何有用的东西.有线索吗?

scala implicit-conversion scala-collections enrich-my-library

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

AngularJS ng-repeat内容上的Gridster jQuery插件变坏了

我正在尝试将Gridster与AngularJS 集成,但还没有太多成功.

阅读Angular UI ui-jq指令的文档,我得到的印象是这个(检查小提琴)应该有效.但是当我对Chrome的调试器进一步了解时,事实证明,在这一行上,它根本找不到任何孩子.

我怀疑在ng-repeat指令的某处,AngularJS决定撕掉将要重复的部分,我明白为什么,但这并不能解决我的问题.我会欢迎任何有助于我进一步发展的线索.

更新1

我开始把它变成一个指令,希望这会改善一些事情.但是,在ng-repeat本地指令的情况下,嵌套也会妨碍.我试图推迟连接jQuery插件,只要我能($evalAsync)和类似,并最终最终使用$timeout.这是我能让它发挥作用的唯一方式.

更新2

我认为最初的方法从来没有给我我需要的东西.因此实现了自定义指令.请参阅下面的答案.

angularjs angular-ui

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

是否有一种通用的方法来反转curried函数的参数顺序?

我想知道你是否可以编写一个泛型函数,它接受一个curried函数,然后反转参数,如下所示:

def foo(a: String)(b: Boolean)(c: Int): String
val bar = invert(foo _)
foo("baz")(false)(12) must be equalTo(bar(12)(false)("baz"))
Run Code Online (Sandbox Code Playgroud)

只要您为要解决的特定情况添加隐式逆变器,以下操作就可以正常工作.但是我对更一般的情况更感兴趣 - 也就是说,处理任何数量的讨论论点的情况.

trait Inverter[V, W] {
  def invert(v: V): W
}

implicit def function2Inverter[X, Y, Z] = 
  new Inverter[(X, Y) => Z, (Y, X) => Z] {
    def invert(v: (X, Y) => Z) = {
      def inverted(y: Y, x: X) = v(x, y)
      inverted _
    }
  }

implicit def curried2Inverter[X, Y, Z] = 
  new Inverter[X => Y => Z, Y => X => …
Run Code Online (Sandbox Code Playgroud)

scala

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

摆脱IntelliJ中烦人的完成

每当我输入implicitIntelliJ时,IntelliJ就会完成它implicitly,这完全不是我想要的.我还没有找到一种方法来禁用它.任何人?

scala intellij-idea

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

你如何阻止Hudson奴隶归档文物?

事实证明,我们的奴隶花费了大量时间将存档的工件移回主Hudson节点.它至少使构建的持续时间增加了三倍.如果有办法防止它会很好.但是,设置要保留的最大构建数量根本没有影响.还有另一种方法可以防止将结果发送回Hudson中央主人吗?

请注意,我实际上没有选中存档工件选项.但是,奴隶仍然在向主人发现任何"存档"内容:

[HUDSON] Archiving .../pom.xml to .../pom.xml
[HUDSON] Archiving .../...-0.1.3-SNAPSHOT.jar to .../...-0.1.3-SNAPSHOT.jar
Run Code Online (Sandbox Code Playgroud)

...每行中的第二条路径始终是主站上的位置.这是一个错误吗?有解决方法吗?

hudson

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