【问题标题】:Unable to inspect/debug Qualtrics Javascript code in Firefox无法在 Firefox 中检查/调试 Qualtrics Javascript 代码
【发布时间】:2017-06-08 17:45:50
【问题描述】:

我在 Qualtrics 中添加了一个非常简单的 javascript/jQuery 代码。它工作正常。但是,根据我自己的理解,并且由于将来我可能会将更复杂的 jQuery 代码与 Qualtrics 集成,我想检查 Firefox 中的流程。我尝试了 Firebug 以及浏览器的内置 Web 开发工具,但我无法看到任何进入 javascript 代码的导航。事实上,Firebug 是说没有 javascript 代码。

以下是我的 firefox 和 firebug 版本: 火狐 53.0.3 萤火虫 2.0.19

我们将不胜感激。

PS:我的 Qualtrics 代码:

Qualtrics.SurveyEngine.addOnload(function()
{
   /*Place Your JavaScript Here*/

   var txtItem =jQuery("#hiddentext");

   if (txtItem.length ) {
        //alert("jquery retrieval worked - DOM element found");

        txtItem.fadeIn(5000);  
        txtItem.css({"background-color": "yellow", "font-size": "200%", "display": "inline"});

    } else {
        alert("jquery retrieval did not work - DOM element NOT found");
    }
});

【问题讨论】:

  • Firebug 是 officially discontinued,它的 Script 面板(除其他外)在 Firefox 53 中不再起作用。
  • “无法看到任何进入 JavaScript 代码的导航”是什么意思?当您在函数的第一行设置断点时,脚本执行是否不会停止,即var txtItem =jQuery("#hiddentext)");
  • 不,执行在其他地方停止 - 在某些系统代码中。不是我的代码,即 var 声明。不知道为什么。如果我继续“跳过”,最后整个代码按预期执行。

标签: javascript jquery firefox firebug qualtrics


【解决方案1】:

Firebug 不再工作了。您必须使用内置的开发人员工具。如果您在 Qualtrics 中在 JFE 下运行,请将以下命令添加到您要开始单步执行的脚本中。

debugger;

【讨论】:

  • 我尝试了你的建议。使用内置的 Firefox Web 开发工具和在“var 语句”之前添加的上述代码,执行确实停止了。但是,即使我继续进入调试模式,我似乎也无法深入了解上述 Javascript 代码。我不确定“Qualtrics 中的 JFE”是什么意思。我错过了什么吗?
【解决方案2】:

在您的脚本中放置一个断点或在您希望脚本执行停止的位置添加一个debugger; 语句。

如果它没有停在预期的行,这可能有两个原因:

  1. 在执行到达您的行之前抛出异常。在这种情况下,您应该检查控制台是否有 JavaScript 错误。可以通过 Debugger 设置(面板右侧的小齿轮图标)> Pause on exceptions 禁用在异常时停止脚本执行。

  2. 这是 Firefox DevTools 中的一个错误。在这种情况下,您应该首先检查此问题是否可以在Firefox Nightly(具有新的调试器 UI)中重现。如果那里可以转载,请file a bug report for it

【讨论】:

  • Sebastian - 为了在我的脚本中放置断点,我需要能够在 Firefox DevTools 中访问我的脚本。我无法做到这一点。这不是 中的常规 JavaScript 代码。这是 Qualtrics 中的 javascript;我不确定它应该出现在哪里,或者我应该在 Firefox Devtools 中的哪里寻找它。任何指针将不胜感激。
  • 我从来没有使用过 Qualtrics,但是当你按下 Ctrl+Alt+F 或在 DevTools 调试器的搜索字段中写一个! 时,你可以search within all JavaScript sources for your sources
  • 我试过 Chrome。它在 Chrome 中运行得非常好,调试器语句突出显示并在代码中的适当位置停止执行。然后我可以介入/跨过。我可以使用您的搜索建议在 Firefox 中找到代码,但不知何故,在调试模式下导航并不顺利。
  • 这听起来像是我回答的选项 2。您应该尝试将您的问题简化为可重现的测试用例,创建错误报告并附上测试用例,以便 Firefox DevTools 团队可以修复它。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-09-10
  • 2017-03-21
  • 1970-01-01
  • 2011-05-21
  • 1970-01-01
  • 2018-09-26
  • 1970-01-01
相关资源
最近更新 更多