小编dcr*_*cro的帖子

强制contenteditable div在Webkit失去焦点后停止接受输入

在Chrome和Safari(以及可能的其他基于Webkit的浏览器)中,即使在div失去焦点之后,仍然可以输入一个可信的div.

我构建了一个简单的例子来说明这个问题:http://jsfiddle.net/yfcsU/3/

该示例有两个元素:一个div contenteditable="true"和一个链接,当点击它时会触发contenteditable div上的模糊事件.

单击链接时,contenteditable div会失去焦点,但您仍然可以键入div,任何按键都会使其重新聚焦.

这种行为在Firefox中按预期工作方式不同:单击该链接将导致contenteditable div停止接受输入.

在Webkit中,有没有办法强制contenteditable div停止接受输入后失去焦点而不禁用div上的contenteditable?

webkit contenteditable

7
推荐指数
2
解决办法
3070
查看次数

Laravel多租户应用中的单个共享队列工作者

我正在构建一个多租户Laravel应用程序(在Laravel 5.3上),它允许每个租户为任何支持的Laravel设置拥有自己的一组配置.这是通过Application使用我自己的实现覆盖默认Laravel 来实现的,该实现提供了自定义配置加载器(覆盖默认值Illuminate\Foundation\Bootstrap\LoadConfiguration).应用程序在引导程序中从环境(PHP $_ENV.env文件)中检测当前承租人,然后为检测到的承租人加载相应的配置文件.

上述方法适用于HTTP和控制台内核,其中每个请求/命令的生命周期都有限,但我不确定如何接近队列工作程序.我希望为所有租户都有一个队列工作器,并且我已经实现了一个自定义队列连接器,以便在安排队列作业时添加其他元数据,以便在工作人员收到租户时识别租户.

我正在寻求帮助的部分是如何在隔离环境中运行每个队列作业,我可以使用自定义配置进行引导.

我看到的一些可能的解决方案是:

  • 运行作为守护程序运行的自定义队列工作程序并从队列中获取作业,但在单独的PHP进程中执行作业(通过创建exec()); 一旦作业被执行,工作人员收集结果(状态,例外等)并完成父进程中的作业(例如删除作业等)

  • 与上面类似,但是在单独的PHP线程中运行作业而不是使用单独的进程 RunKit Sandbox

  • 实现一个解决方案,一旦收到队列作业,"重新启动"应用程序(例如,重新加载当前租户的配置,重置任何已解析的依赖关系等)

重要的是,我希望这个多租户作业执行对于作业本身是透明的,这样那些不适合在多租户环境中运行的作业(例如来自Laravel Scout等第三方软件包的作业)可以是没有任何修改处理.

有关如何处理此问题的任何建议?

php architecture queue laravel laravel-5

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

标签 统计

architecture ×1

contenteditable ×1

laravel ×1

laravel-5 ×1

php ×1

queue ×1

webkit ×1