如何使用 jQuery 在 Firefox 中重置页面刷新时的计数器编号?

发布于 2024-12-10 06:26:06 字数 1459 浏览 0 评论 0原文

我注意到这是否是一个错误...然后 Chrome 和 Opera 等其他浏览器可以重置计数器编号,但 Firefox 不会重置它...

转到 http://bksn.mx/opequimar/renta_descripcion.html

有一个网页并转到缩略图部分,单击向右箭头直到最大数字,然后刷新页面 (F5),您会看到“3 de 3”,再试一次,您将在 Firefox 中看到“5 de 3”

第一个数字是 counter,最后一个数字是 size();,每个数字都是缩略图的 div。

有一个计数器脚本:

$("a.prevarrow1").click("click", function() {
  var qInput = $(this).parents(".quantityInput");
  var qText = qInput.find(".quantityText");
  var qValue = parseInt((qText.val())? qText.val() : 0);
  qText.val(Math.max(qValue - 1, (qInput.attr("min"))? qInput.attr("min") : -0xffff));
});

$("a.nextarrow1").click("click", function() {
  var qInput = $(this).parents(".quantityInput");
  var qText = qInput.find(".quantityText");
  var qValue = parseInt((qText.val())? qText.val() : 0);
  qText.val(Math.min(qValue + 1, (qInput.attr("max"))? qInput.attr("max") : 0xffff));
});

HTML 输出:

<div class="quantityInput" min="0" max="64">
<p>Pags. &nbsp;
    <input type="text" disabled="disabled" class="quantityText" value="1" />
   de &nbsp;<span></span></p>
<div class="absolute">
   <a class="prev prevarrow1"></a>

<a class="next nextarrow1"></a>
   </div>
</div>

如果不可能,我接受您的新脚本。 提前致谢!

I'm noticed it is a bug or not... then other browsers like Chrome and Opera can reset counter number, but Firefox doesn't reset it...

Go to http://bksn.mx/opequimar/renta_descripcion.html

There a web page and go to thumbnails section, click right arrows until is maximum number, then refresh page (F5) and you see "3 de 3", try it again and you will see "5 de 3" with Firefox.

The first number is counter and the last number is size(); each to div of thumbnails.

There a script of number counter:

$("a.prevarrow1").click("click", function() {
  var qInput = $(this).parents(".quantityInput");
  var qText = qInput.find(".quantityText");
  var qValue = parseInt((qText.val())? qText.val() : 0);
  qText.val(Math.max(qValue - 1, (qInput.attr("min"))? qInput.attr("min") : -0xffff));
});

$("a.nextarrow1").click("click", function() {
  var qInput = $(this).parents(".quantityInput");
  var qText = qInput.find(".quantityText");
  var qValue = parseInt((qText.val())? qText.val() : 0);
  qText.val(Math.min(qValue + 1, (qInput.attr("max"))? qInput.attr("max") : 0xffff));
});

HTML of output:

<div class="quantityInput" min="0" max="64">
<p>Pags.  
    <input type="text" disabled="disabled" class="quantityText" value="1" />
   de  <span></span></p>
<div class="absolute">
   <a class="prev prevarrow1"></a>

<a class="next nextarrow1"></a>
   </div>
</div>

If is not possible, i accept the new scripts from yours.
Thanks in advance!

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

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

发布评论

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

评论(1

巾帼英雄 2024-12-17 06:26:06

问题是页码存储在文本框中。 Firefox、IE 和“返回 Netscape 1 的浏览器(几乎肯定是 NCSA Mosaic)”根据Brendan Eich 会在重新加载时恢复已保存的表单数据,但不会在切换重新加载时恢复。基于Webkit的浏览器在这里确实不兼容。

解决方案是避免使用文本框来显示数字(将其更改为 ,使用 jQuery 的 .text())或在加载时读取输入的值并适当更新页面的状态(将缩略图滚动到指定的页码)。

The issue is that the page number is stored in a textbox. Firefox, IE, and "Browsers going back to Netscape 1 (and almost certainly NCSA Mosaic)" according to Brendan Eich restore saved form data on reload, but not on shift-reload. Webkit-based browsers are indeed incompatible here.

The solution is to avoid using a textbox to display the number (change it to a <span>, change the span's value with jQuery's .text()) or to read the input's value on load and update the page's state appropriately (scrolling the thumbnails to the specified page number).

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