1

我正在尝试向 Elfinder 添加一个关闭按钮。我希望该位置位于通常关闭按钮所在的搜索框的右侧。

在 elfinder 初始化之后,我这样做:

$('.elfinder-toolbar').prepend('<a class="elfclose"><div class="elfclose-bg">&times;</div></a>');

的CSS:

.elfclose {
  font-size: 20px;
  font-weight: bold;
  line-height: 18px;
  color: #000000;
  text-shadow: 0 1px 0 #ffffff;
  text-decoration: none;
  float: right;
}

$().prepend 应该将 elfclose div 作为工具栏下的第一个元素,但搜索框始终是第一个。

我相信它是由 Elfinder 在我之后引起的......在另一个 div 存在之后我可以说这样做吗?

4

1 回答 1

1

仅供参考,我确实想出了这个...

搜索框是 Jquery 在 init 之后添加的,因此您必须在 prepend 之后放置一个延迟。我尝试检查搜索 div 的存在(这会更好),但结果证明工作量太大。没有人会注意到 0.2 秒的延迟。套用 Larry Wall 的话说,如果你的代码在你的老板解雇你之前完成了工作,那么你的代码就是正确的。

我在 Angular,因此 $compile 指令:

var close = $compile('<a class="elfclose" ng-click="closeFileBrowser()">
<div class="elfclose-bg">&times;</div></a>')($scope);
$timeout(function(){$('.elfinder-toolbar').prepend(close);}, 200);
于 2014-07-15T19:01:32.733 回答