0

这是我的js代码

<script type='text/javascript'>

  // Browser safe opacity handling function

  function setOpacity( value ) {
   document.getElementById("popup").style.opacity = value / 10;
   document.getElementById("popup").style.filter = 'alpha(opacity=' + value * 10 + ')';
  }

  function fadeInMyPopup() {
   for( var i = 0 ; i <= 100 ; i++ )
    setTimeout( 'setOpacity(' + (i / 10) + ')' , 8 * i );
  }

  function fadeOutMyPopup() {
   for( var i = 0 ; i <= 100 ; i++ ) {
    setTimeout( 'setOpacity(' + (10 - i / 10) + ')' , 8 * i );
   }

   setTimeout('closeMyPopup()', 800 );
  }

  function closeMyPopup() {
   document.getElementById("popup").style.display = "none"
  }

  function fireMyPopup() {
   setOpacity( 0 );
   document.getElementById("popup").style.display = "block";
   fadeInMyPopup();
  }
  </script>

此代码工作正常。我正在使用此代码弹出一个用于向朋友发送电子邮件的灯箱。我坚持的是,一旦我提交了,我想在同一个弹出窗口中说谢谢。现在这就是我要说的谢谢:这将进入一个新窗口。但我希望它在同一个灯箱窗口上。

<SCRIPT language="JavaScript">
<!--
window.location="thanks.php";
//-->
</SCRIPT>

这是我在其他代码中调用灯箱的方式:

<div id="popup" name="popup"><?php include ("email.php"); ?></div>

关于实现这一目标的任何想法。非常感谢。


好的,这里有更多解释

我有 3 个事件需要 ro 调用一个表单:

在我的表单中,我使用图像作为提交按钮。所以要传递提交的值,这就是我所做的,它在所有浏览器中都可以正常工作:

<输入类型="图片" onclick="this.form.select.value = this.value" >

现在我想在提交表单后调用另一个事件。

< input type="image" onclick="this.form.select.value = this.value; javascript:thanks()" >

现在,当我放入第二个事件时,我的表单不会验证或提交值。

当我将该事件放在表单标签中时,它也不起作用。

这是我的thanks()的js函数: function Thanks() { setOpacity( 0 ); document.getElementById("popup").innerHTML = "谢谢!!" closeMyPopup();

    }

我正在使用此链接中的代码:http: //dhtmlpopups.webarticles.org/fade-effects.php;我有一个淡化效果的注册表单,一旦提交了表单,我希望出现一个谢谢你,但它似乎并没有很好地工作。

4

1 回答 1

0

我强烈建议您查看 jQuery 框架。它使做这样的事情变得非常轻松。

您还可以在 Javascript 中使用 innerHTML 属性来更新文本:

document.getElementById("popup").innerHTML = "Thanks, yo"
于 2010-01-25T04:32:14.883 回答