firefox 相关问题

Mozilla Firefox是一款免费的开源跨平台Web浏览器。如果您的问题与Firefox的内部工作方式有关,或者如果它与在其他浏览器中工作的Firefox无效的代码相关,请使用此标记。关于Firefox附加组件开发的问题应该被标记为[firefox-addon]。如果您的问题是关于使用Firefox浏览(即作为最终用户),您应该在超级用户上提问。

内容可编辑 - Firefox <br /> 标签

Firefox 在按 Enter 键时插入 标签,而其他浏览器则添加 或 。我知道 chrome 和 safari 正在插入第一个孩子的相同标签...... Firefox 在按 Enter 键时插入 <br /> 标签,而其他浏览器则添加 <p> 或 <div>。我知道 chrome 和 safari 正在插入 contentEditable div 的第一个子元素的相同标签。 Firefox 也是如此,但是,如果第一个标签的innerHTML 为空,则 Firefox 只是忽略该标签并通过在第二行中推送默认节点来创建新行,并直接在编辑器内写入而不是在子节点内写入。所以基本上,我希望 Firefox 在给定的标签内写入,并继续在每次按 Enter 时插入这种节点。如何做呢?有什么建议么? 我找到了解决方案:) 为了使这项工作有效,您必须为插入符的父元素提供一个 id。然后你可以使用下面的代码。请注意,我从 c# 获取 browsernName 并将其放入隐藏字段中。这就是为什么我将其等同于“firefox”。以下代码在FF 3.6上测试,完美运行。唯一的事情是,您必须检查插入符号的父元素,如果它不等于当前行的 id,那么您必须使用选择函数将插入符号放置在当前行内。另外,在 keyup 事件上执行此代码,并确保如果您在 keyup 事件上执行其他一些代码,请将此代码放在其末尾!无论如何,享受吧:) // The code works good in the following cases: // 1) If there is text inside the editor and the user selects the whole text // and replace it with a single character, the <p> tag will be placed and the // text will place inside the p tag // 2) If the user selects the whole code and deletes it and begins to type again // 3) If the user types normally and press enter // NB: Please note me if you find any bug if (browserName == "firefox") { //remove all br tags var brs = txteditor.getElementsByTagName("br"); for (var i = 0; i < brs.length; i++) { brs[i].parentNode.removeChild(brs[i]); } //check whether there is a p tag inside var para = txteditor.getElementsByTagName("p"); if (para.length == 0) { var inner = txteditor.innerHTML.replace(/^\s+|\s+$/g, ''); var str = (inner == "") ? "&#8203;" : txteditor.innerHTML; var nText = "<p id=\"" + cRow + "\">" + str + "</p>"; // in order to prevent a dublicate row clear inside the text editor txteditor.innerHTML = ""; document.execCommand('insertHTML', false, nText); } else { // always make sure that the current row's innerHTML is never empty if (document.getElementById(cRow).innerHTML == "") document.getElementById(cRow).innerHTML = "&#8203;"; } } 尝试在元素内插入 <p></p>。那么几乎可以肯定每个换行符都会是一个新段落。 如果将 contenteditable 元素更改为 <span> 而不是 <div>,则新行将带有 <br>。我还没有用其他元素对此进行测试,但看看不同元素的行为方式会很有趣。 可以使用 <span> 设置 display: block 元素的样式,使其看起来像 <div> 元素。 我遇到了类似的问题,导致 Firefox 中出现额外的 <br>,但没有找到任何 <p> 或 <div>。当内容为空或按空格后插入 <br>。 无论如何,我尝试通过 MutationObserver API 来解决它。它工作得并不完美,但我未能找到满足我要求的其他解决方案。 if (navigator.userAgent.includes('Firefox')) { const observer = new MutationObserver(function(mutations) { mutations.forEach(function(mutation) { // when a <br> inserted if (mutation.addedNodes.length === 1 && mutation.addedNodes[0].tagName === 'BR') { // if at the beginning, remove it if (mutation.previousSibling === null) return mutation.addedNodes[0].remove() // or if after a space, remove it and add a space // since it seems Firefox need the <br> to keep that space if (mutation.previousSibling.nodeValue?.endsWith(' ')) { mutation.target.insertAdjacentText('beforeend', ' ') mutation.addedNodes[0].remove() } } }) }) observer.observe(contentEditableDiv, { childList: true }) } 副作用: 必须输入两次才能添加新行,或者有时需要添加空格 无法将内容换行 该问题也被提及为 Firefox 问题跟踪器中的错误:https://bugzilla.mozilla.org/show_bug.cgi?id=1615852 可能有帮助的摘录: <br> 元素在以下情况下是必需的: 块元素是空的,以便使它们的高度非零并放置第一行以获得良好的插入符位置 文本以可折叠的空白结尾,以使其可见

回答 4 投票 0

Mozilla Firefox 使用哪个 GUI 库来开发?

哪个GUI库是用来开发Firefox的? Qt? GTK+? Windows 原生?

回答 3 投票 0

Firefox 版本中的错误计数

从哪里可以获得与 Mozillas Firefox 发布历史相关的数据? 我需要 每个发布版本后的错误计数 该特定发行版本的代码中没有注释 没有...

回答 1 投票 0

JavaScript document.forms[0].field.value 兼容性

我在 IBM domino 中有一个带有单选按钮的表单。单选按钮用于控制用户想要执行的操作。使用 JS,我检查在发送表单之前是否选择了一个选项。我用

回答 1 投票 0

覆盖 Firefox 扩展内容脚本中页面的功能

我制作了一个 firefox 扩展来获取所有请求 url 并显示它们。但只有当我将代码粘贴到控制台中时,该代码才有效。 当扩展加载时,它没有显示任何错误,看起来就像这样

回答 1 投票 0

ExtJs5 - 覆盖 ext-all-debug.js 中定义的本机方法

假设我想重写文件 ext-all-debug.js 中 Sencha 提供的本机代码内的函数。 该函数在 Ext.util.Renderable 类内部定义,名称为cacheRef...

回答 2 投票 0

背景过滤器:模糊()和混合混合模式:Firefox 上的差异错误

我正在开发一个使用混合混合模式的固定页脚:差异来调整背景从黑色到白色的变化。还添加了背景滤镜:blur() 作为“背景”。 在 Chr...

回答 1 投票 0

SVG 矩形未显示在 Firefox 中,但适用于 chrome

我正在绘制一个简单的两个矩形svg,如下所示: 我正在绘制一个简单的两个矩形 svg,如下所示: <svg width="72px" height="72px" viewBox="0 0 72 72" xmlns="http://www.w3.org/2000/svg"> <rect stroke-dashoffset="0" x="2.4px" y="2.4px"></rect> <rect ng-class="$ctrl.expiryClass" x="2.4px" y="2.4px" stroke-dasharray={{$ctrl.dashlength}} stroke-dashoffset={{$ctrl.offset}}></rect> </svg> 这在 Chrome 中效果很好,看起来像这样: 但是,svg 没有显示在 FireFox 中,我只看到紫色的 2h 框。 知道发生了什么事吗? 我希望您使用 CSS 设置矩形的 width 和 height。正确吗? 如果是这样,那就是 SVG 2 的东西目前只能在 Chrome 中使用。 如果您希望跨浏览器兼容,您需要使用常规 width 和 height 属性。 <rect stroke-dashoffset="0" x="2.4px" y="2.4px" width="100px" height="100px"/> 正如 @paul 提到的,这是 rect() 的问题 您可以使用 inkscape 轻松将 SVG 矩形转换为路径。 在inskape中打开.svg,单击图层,选择所有矩形,将它们转换为路径(cmd shift C)。然后转到“对象/变换...”并单击“应用”。保存文件。

回答 2 投票 0

为什么我的表格标题在 Firefox 中占表格高度的一半?

我有一个 HTML 表格: &... 我有一个 HTML 格式的表格: <div style="height: 90vh"> <div style="position: relative; width: 100%; height: 100%"> <table style="height: 100%"> <thead> <tr> <th>Header 1</th> <th>Header 2</th> <th>Header 3</th> </tr> </thead> <tbody> <tr> <td>Data 1</td> <td>Data 2</td> <td>Data 3</td> </tr> </tbody> </table> </div> </div> 当我在 Firefox 中打开它时,标题占据表格高度的一半,但当我在 Google Chrome 上打开它时,标题仅占据其内容的高度。 您知道这个问题吗? 我希望它像 Google Chrome 一样工作,并且标题仅占据其内容的高度。 您可以为 height: 1em; 添加 th。如果th中有换行符,它会根据内容自动增长 th { height: 1em; } <div style="height: 90vh"> <div style="height: 100%"> <table style="height: 100%"> <thead> <tr> <th>Header 1</th> <th>Header 2</th> <th>Header 3</th> </tr> </thead> <tbody> <tr> <td>Data 1</td> <td>Data 2</td> <td>Data 3</td> </tr> </tbody> </table> </div> </div>

回答 1 投票 0

firefox 中的 html 表格标题和正文

我有一个 HTML 表格: 我有一个 HTML 格式的表格: <div style="height: 90vh"> <div style="position: relative; width: 100%; height: 100%"> <table style="display: table; height: 100%"> <thead> <tr> <th>Header 1</th> <th>Header 2</th> <th>Header 3</th> </tr> </thead> <tbody> <tr> <td>Data 1</td> <td>Data 2</td> <td>Data 3</td> </tr> </tbody> </table> </div> </div> 当我在 Firefox 中打开它时,标题占据了表格的一半,但是当我在 Google Chrome 上打开它时,标题只占据了其内容的高度。 您知道这个问题吗? 我希望它像 Google Chrome 一样工作,并且标题仅占据其内容的高度。 您可以为 height: 1em; 添加 th。 th { height: 1em; } <div style="height: 90vh"> <div style="position: relative; width: 100%; height: 100%"> <table style="display: table; height: 100%"> <thead> <tr> <th>Header 1</th> <th>Header 2</th> <th>Header 3</th> </tr> </thead> <tbody> <tr> <td>Data 1</td> <td>Data 2</td> <td>Data 3</td> </tr> </tbody> </table> </div> </div>

回答 1 投票 0

如何通过标签查询 Firefox 书签?

如何显示 Places.sqlite 数据库中标记为“press_germany”的书签?我使用 SQLite 管理器扩展和 SQLite 数据库浏览器。 我没有看到任何标签表,也不知道 Firefox

回答 6 投票 0

在 Firefox DevTools Network 选项卡中,如何仅查看失败的请求?

我希望能够查看所有有错误响应(任何类型)的请求。我的意思是,响应状态代码为“4xx”或“5xx”的请求。 我发现...

回答 1 投票 0

Favicon 显示在浏览器选项卡上,但不显示在 Firefox 中的书签上

如主题所示。 我创建了一个 32x32 favicon.ico 文件并将其放入项目文件夹中。 这个图标在浏览器的选项卡上显示得很好,但是当我将此选项卡拖到书签时,图标会更改为终端图标......

回答 2 投票 0

在 Firefox DevTools Network 选项卡中,如何仅查看错误请求?

我希望能够看到所有错误的请求(任何类型)。我的意思是带有“4xx”或“5xx”等状态代码的请求。 我发现我可以输入 status-code:20...

回答 1 投票 0

如何在 Selenium IDE 中使用特定的 clientX 和 clientY 参数值触发鼠标悬停事件?

我正在尝试编写一个测试,将一些文本输入到 Selenium IDE 2.9.1 (Firefox 45) 中的 Froala JS 编辑器实例中。 我无法确定指定 clientX 和 clientY 参数的任何方法...

回答 2 投票 0

为什么我无法让 Firefox 在我的某个应用程序中播放 mp3 音频?

我有 2 个网络应用程序使用 HTML 标签呈现音频。我不明白为什么一个应用程序可以播放 MP3 文件而另一个应用程序不能。我确实从 Firefox 收到了这条消息,埋藏在......

回答 1 投票 0

JQuery 在 ul 中查找 li 元素

我有一个函数,它应该从 id 标识的列表中删除 li 元素。 我使用 JQuery 和这个调用 $("#selector").find("li[id='" + id.substring(4) + "']")....

回答 1 投票 0

Mozilla Firefox 浏览器上的滚动行为异常

我正在使用 stencil.js 框架创建一个标头组件,标头有一个正常状态和一个在滚动时改变的 isScroll 状态。 问题是,当我滚动时,标题会变得跳跃并且

回答 1 投票 0

Mozilla Firefox 网络选项卡中“已传输”列和“大小”列之间的差异

我正在尝试确定 Transferred 列和 Size 列之间的差异。这与压缩文件和未压缩文件之间的区别有关吗? 我没有在我的

回答 1 投票 0

Firefox 和 Chrome 在 Javascript 方面有什么区别?

使用 Javascript 时,两种浏览器之间似乎存在许多差异(当然超出了性能)。我什至不确定这些是错误还是确实有不同的评估。在我的应用程序中...

回答 3 投票 0

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.