我正在尝试从弹出窗口更改父窗口中按钮的类。我可以更改显示,但是类的更改似乎没有生效。在弹出窗口中运行的这段代码有什么问题?更改为innerHTML和显示即可,但不能使用className。

   var messages = window.opener.document.getElementById("messages");
   messages.innerHTML="Now linked to Facebook page at "+  link + ".";

   var firstmessage = window.opener.document.getElementById("firstmessage");
   firstmessage.style.display = 'block';
   firstmessage.style.className += ' notice_msg ';

   var choosefanpagebtn = window.opener.document.getElementById("choosefanpagebtn");
   choosefanpagebtn.style.className = "";
   choosefanpagebtn.style.className = "green_button";


谢谢。

最佳答案

在selectfanpagebtn之后删除.style:

var choosefanpagebtn = window.opener.document.getElementById("choosefanpagebtn");
choosefanpagebtn.className = "green_button";


应该管用。未经测试,请告诉我。
另外,此行也是不必要的:

choosefanpagebtn.className = "";


因为您没有执行+ =。
如果您以某种方式做到了,然后

choosefanpagebtn.className += "green_button";


后来,我看到那条线很有用。

09-19 22:44