Firefox 如何呈现链接

发布于 2024-08-03 12:09:07 字数 884 浏览 5 评论 0原文

我只想分享我对 Ubuntu Jaunty Jackalope 上的 Firefox 3.5 如何呈现 HTML 的一些观察:

我的 JSP 页面中有以下条目:

<a title="myLink" href="[some url]">link 1</a>
<a title="myLink" href="[some url]">link 2</a>
<a title="myLink" href="[some url]">link 3</a>

<a title="myLink"  class="hiddenLink"  href="[some url]">link 4</a>
<a title="myLink"  class="hiddenLink"  href="[some url]">link 5</a>
<a title="myLink"  class="hiddenLink"  href="[some url]">link 6</a>

<button>more links</button>

上述链接在 Firefox 上显示为:

链接 4 到链接 6 被隐藏。

link 1 link2 link3

我使用 jQuery: 在“更多链接按钮”上附加了一个 javascript:

$("a[href ^='myLink']:hidden").show();

以在页面上显示链接 4 到 6。如果我单击“更多链接”按钮,这就是 Firefox 呈现链接的方式:

link 1 link2 link3
链接4
链接5
链接6

I just would like to share some of my observation on how Firefox 3.5 on Ubuntu Jaunty Jackalope renders HTML:

I have the following entries in my JSP page:

<a title="myLink" href="[some url]">link 1</a>
<a title="myLink" href="[some url]">link 2</a>
<a title="myLink" href="[some url]">link 3</a>

<a title="myLink"  class="hiddenLink"  href="[some url]">link 4</a>
<a title="myLink"  class="hiddenLink"  href="[some url]">link 5</a>
<a title="myLink"  class="hiddenLink"  href="[some url]">link 6</a>

<button>more links</button>

The above links are shown on Firefox as:

link 4 to link 6 are hidden.

link 1 link2 link3

I attach a javascript on the 'more links button' using jQuery:

$("a[href ^='myLink']:hidden").show();

to show links 4 to 6 on the page. This is how firefox renders the links if I click the 'more links' button:

link 1 link2 link3
link 4
link 5
link 6

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

你的他你的她 2024-08-10 12:09:07

可能是因为当您调用 show() 时,jQuery 将显示样式属性设置为 display="block",而不是 display="inline"。试试这个:

$("a[href ^='myLink']:hidden").css('display', 'inline');

或者:

$("a[href ^='myLink']:hidden").removeClass();

Probably because jQuery is setting the display style property to display="block" as opposed to display="inline" when you call show(). Try this:

$("a[href ^='myLink']:hidden").css('display', 'inline');

or:

$("a[href ^='myLink']:hidden").removeClass();
燃情 2024-08-10 12:09:07

这是因为 .show() 将它们变成块:

此函数在隐藏时显示页面上的匹配元素。它实际上将显示样式更改为“块”。这可能会导致页面布局出现一些问题,因为它会在元素之前和之后插入换行符,但对于一般用途来说,它是完美的。为了更灵活的使用,请查看 .addClass().removeClass() 函数。

我建议将 .show() 替换为 .removeClass('hiddenLink')

或者“hiddenLink”不仅仅隐藏链接,您是否希望它们在可见时看起来与其他链接不同?

That's because .show() turns them into blocks:

This function shows the matching elements on the page when they are hidden. It actually changes the display style to 'block'. This can cause some problems in your page's layout because it inserts a line break before and after the element, but for general use it is perfect. For a more flexible use please take a look and the .addClass() and .removeClass() function.

I would suggest replacing .show() by .removeClass('hiddenLink').

Or does that "hiddenLink" do more than just hide the links, and do you want them to look different from your other links when they become visible?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文