为提升您的使用体验,本站正在维护,部分功能暂时无法使用。如果本站文章无法解决您的问题,您想要向社区提问的话,请到 Twitter 上的 @FirefoxSupport 或 Reddit 上的 /r/firefox 提问,我们的支持社区将会很快回复您的疑问。

搜索 | 用户支持

防范以用户支持为名的诈骗。我们绝对不会要求您拨打电话或发送短信,及提供任何个人信息。请使用“举报滥用”选项报告涉及违规的行为。

详细了解

Javascript Calculator no longer works in FF. Other browsers OK.

  • 5 个回答
  • 1 人有此问题
  • 14 次查看
  • 最后回复者为 Wikiwide

more options

I have a javascript calculator that has suddenly stopped working in FF. I have upgraded from 3.5.8 to 3.6.3 but no changes. IE, Safari, Chrome and Opera all work fine.

Calculator can be found at http://www.hydrastop.be/hprodCalc.html

I have a javascript calculator that has suddenly stopped working in FF. I have upgraded from 3.5.8 to 3.6.3 but no changes. IE, Safari, Chrome and Opera all work fine. Calculator can be found at http://www.hydrastop.be/hprodCalc.html

所有回复 (5)

more options

Please, contact site developers about their Javascript.

var one = eval(document.theForm.elements[0].value) var two = eval(document.theForm.elements[1].value) var m2 = Math.round(one * two) squareMeters.innerHTML = m2 Error: squareMeters is not defined

It seems the code doesn't declare squareMeters beforehand.

more options

Hi

Afraid that didn't help. BTW when I posted this question I could not see what I was typing at all. All fields looked blank but cursor moved along. drop downs were empty. But I see the post worked :-)

Thanks for trying. The script was working for about 4 months, then it stopped. Basically in FF you click the submit 'Resultaat' button and nothing happens.

r/R

more options

Having a badly written script that used to work for whatever reasons of lax implementations is no excuse not to improve the script when implementations follow the standards more closely.

more options

I fixed the script (locally) by declaring everything and there is no change in Firefox. That is what I meant to say. I will improve the script but it doesn't solve the issue.

more options

I see that the answer that I posted yesterday got lost by restoring a forum backup, so I'll repost my answer. I see that you have already applied the change that I had suggested. --- You need to use document.getElementById. See https://developer.mozilla.org/en/DOM/document.getElementById

function doMath() { var one = eval(document.theForm.elements[0].value); var two = eval(document.theForm.elements[1].value); var m2 = Math.round(one * two); var m3 = Math.round(one * two); var maxhstopqty = Math.round(m2 / 5); var minhstopqty = Math.round(m2 / 8); var minhblockqty = Math.round(m2 / 5); var maxhblockqty = Math.round(m2 / 3); document.getElementById('squareMeters').innerHTML = m2; document.getElementById('squareMeters2').innerHTML = m3; document.getElementById('minhstopReq').innerHTML = minhstopqty; document.getElementById('maxhstopReq').innerHTML = maxhstopqty; document.getElementById('minhblockReq').innerHTML = minhblockqty; document.getElementById('maxhblockReq').innerHTML = maxhblockqty; }