小编Jam*_*yke的帖子

如何捕获PhantomJS提取的页面中生成的JavaScript错误?

我有一个PhantomJS脚本,它加载一个本地HTML文件,注入一些javascript文件,然后在页面上下文中执行一些javascript.运行的javascript会生成异常,但我只从控制台获取输出,这似乎不区分错误和普通日志,并且没有文件,行号或堆栈跟踪.

我需要的是捕获或以其他方式区分这些错误的方法.我已经尝试过了:

  • 将我的PhantomJS脚本包装在try-catch中
    • 结果:没有任何东西被抛到足以被这个抓住
  • 定义一个window.onerror函数
    • 结果:没有任何反应.WebKit没有在窗口上实现onerror事件

我希望能够检索错误对象本身,以便我可以检索堆栈跟踪.

javascript webkit phantomjs

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

是否有Perl模块来监控电子邮件队列?

我正在研究问题跟踪系统,并希望该应用程序处理电子邮件回复.也就是说,我想要一个可以监视电子邮件队列并根据电子邮件内容执行某些操作的脚本.然后它应该能够删除电子邮件等.

我目前使用MIME :: Lite发送电子邮件,我可以处理编写脚本等.(阅读:我不是Perl的新手).但是,我不知道哪些模块适合执行此特定任务.我想尽快开始这个,所以我希望缩小我的搜索空间以寻找可能的模块.

如果您需要知道,应用程序将在标准的Linux,Perl,MySQL堆栈上运行,并将Exchange作为邮件服务器.

任何人都可以建议使用Perl模块来帮助我吗?任何与此相关的教程或最佳实践也会有所帮助.

谢谢!

email perl exchange-server cpan

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

为什么全宽 flexbox 列会挤压它的兄弟姐妹?

当尝试创建一个类似表格的布局时,其中一个主列应占用所有可用空间,主列最终会占用比预期更多的空间,并将其他列推到容器边界之外。

我正在寻求的行为就像我在使用表格来布置它并给出了一个 column width: 100%

如果你看下面的例子,你会看到第一行的第二列被压缩,即使溢出是隐藏的。第一列似乎比其他列具有某种大小优先级。

我很好奇为什么会发生这种情况以及什么是可重用的解决方案。我不想在任何列上设置固定宽度。

.list {
  border: 1px solid #000;
}

.list-row {
  display: flex;
  border: 1px solid #AAA;
}

.list-column {
  border: 1px solid blue;
  white-space: nowrap;
}

.list-column--main {
  flex-grow: 1;
}

.hide-overflow {
  overflow: hidden;
}
Run Code Online (Sandbox Code Playgroud)
<!DOCTYPE html>
<html>
<head>
<script src="https://rawgithub.com/ai/autoprefixer-rails/master/vendor/autoprefixer.js"></script>
  <meta charset="utf-8">
  <title>Example</title>
<style type="unprocessed" id="AutoprefixerIn">%css%</style>
<style id="AutoprefixerOut"></style>
<script>
AutoprefixerSettings = ""; //Specify here the browsers you want to target or leave empty
document.getElementById("AutoprefixerOut").innerHTML = autoprefixer(AutoprefixerSettings || null).process(document.getElementById("AutoprefixerIn").innerHTML).css;
</script>
</head>
<body> …
Run Code Online (Sandbox Code Playgroud)

html css flexbox

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

使用 JS 以编程方式在 Safari 中打开一个新选项卡

我正在 Ember.js 平台上开发带有用于上传文件的 Microsoft Azure 数据库。由于这些文件的内容是敏感的,我们依靠 Azure 的安全访问 api 允许我们的用户查看文件大约 2 分钟,然后使访问链接过期。此安全访问链接作为 返回到我的应用程序response.fileURL

问题是我需要在新选项卡中打开此链接,到目前为止,我尝试过的方法适用于除 Safari 之外的所有浏览器。

现在,在搜索“以编程方式在 safari 上打开新标签”一段时间后,到目前为止我在网上找到的每个结果(例如,http://whoknew.dk/programmatically-opening-a-new-tab-window- on-mobile-safari-55.htm)有一个对以下代码有一些解释的实现:

function openURL(){
    var a = window.document.createElement("a");
    a.target = '_blank';
    a.href = response.fileURL;

    // Dispatch fake click
    var e = window.document.createEvent("MouseEvents");
    // e.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
    e.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, true, false, false, false, 0, null); 
    a.dispatchEvent(e);
}

openURL();
Run Code Online (Sandbox Code Playgroud)

由于一个简单的

<a …
Run Code Online (Sandbox Code Playgroud)

javascript safari mobile-safari

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

在ASP.NET MVC剃须刀CheckBox中onclick不起作用

我需要将一个onclick事件分配给ASP.NET MVC razor中的CheckBoxFor,但它永远不会被调用.

我有这样的东西,这是行不通的:

<script type="text/javascript">
    function setCompleteStatus() {
        alert("setCompleteStatus called");
    }
</script>

@Html.CheckBoxFor(m => m.Process.IsComplete, 
                  new Dictionary<string, object>{
                     {"id", "p1isCompleted"}, 
                     {"onclick","setCompleteStatus()"}, 
                     {"data-role", "flipswitch"}, 
                     {"data-on-text", "complete"}, 
                     {"data-off-text", "incomplete"}, 
                     {"data-wrapper-class", "custom-size-flipswitch"}})
Run Code Online (Sandbox Code Playgroud)

此尝试也不起作用:

<script type="text/javascript">
    $("#p1isCompleted").click(
        function setCompleteStatus() {
            alert("setCompleteStatus called");
        }
    );
</script>
Run Code Online (Sandbox Code Playgroud)

这种方法导致在alert加载页面时调用一次,但是当我单击复选框时则不会:

<script type="text/javascript">
    $(document).ready(
        $("#p1isCompleted").click(
            alert("setCompleteStatus called");
        )
    );
</script>
Run Code Online (Sandbox Code Playgroud)

由于data-属性我不能使用这样的字典:new {@onclick, "setCompleteStatus('1')"}

顺便说一下,Firefox的控制台中没有显示javascript错误

javascript asp.net-mvc jquery razor

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