网页中的js函数代码有两种,
第一类:
function showError(){
showConfirm.hightLight(confirmContent,"添加好友失败,服务器忙!","");
confirmButton.focus();
}第二类;
var FilmPlay=function(){};
FilmPlay.canPlay=true;
FilmPlay.iFilmId=0;
FilmPlay.iItemnum=0;
FilmPlay.iUserFilmId=0;
FilmPlay.reloadTime=20;
FilmPlay.seeTime=0;
FilmPlay.setTimeFun=null; FilmPlay.setSeeTime=function(){
var href="/web/model/setSeeTime.jsp?iUserFilmId="+this.iUserFilmId+"&iSection="+this.iItemnum+"&iSeeTime="+this.seeTime 
... ....
};
问题是,小弟我使用Doc.parentWindow.execScript执行第二类的时候,出现了‘setSetTime’未定义的错误。
同样,执行第一类的时候就顺利通过。请高手们指导一下。我的执行代码Doc := WebBrowser1.Document as IHTMLDocument2;  if not Assigned(Doc) then
    Exit;  HTMLWindow := Doc.parentWindow;  if not Assigned(HTMLWindow) then
    Exit;  // Run JavaScript
  try    jsfn:= 'Filmplay.setSeeTime';
    HTMLWindow.execScript(JSFn, 'JavaScript');
  except  end;

解决方案 »

  1.   

    看看是不是对字符大小写敏感FilmPlay.setSeeTime=function()'Filmplay.setSeeTime'
      

  2.   

    'Filmplay.setSeeTime'不是合法的js语句
    函数调用要加括号。
      

  3.   

    没有全局的FilmPlay对象吧?
    执行window. FilmPlay= FilmPlay先
      

  4.   

      蒋晟 大哥,找你很久了,帮忙看下,谢谢!
    http://topic.csdn.net/u/20090629/10/49aa97e5-9aa7-417c-bda8-704185b3c2ff.html
      

  5.   


    再次谢谢蒋先生的指点,
    改正后的代码如下:jsfn:= 'window.FilmPlay= FilmPlay';HTMLWindow.execScript(JSFn, 'JavaScript'); 执行通过jsfn:= 'Filmplay.setSeeTime()';HTMLWindow.execScript(JSFn, 'JavaScript'); ,<--执行到此出现FilmPlay未定义的错误若蒋先生有空,还请您多多指点。
    测试的网页是http://e.bbapp.net/blog/index/index.jsp?blogId=1968
      

  6.   

    用window.FilmPlay调用呢?
    FilmPlay是不是一个全局的变量?
      

  7.   

    感谢蒋先生,使用window.FilmPlay调用成功。