为什么新页面中的javascript功能不起作用?

时间:2016-10-15 08:04:10

标签: javascript html

我有以下打开的选项页面:

<li class="small-icon options-panel"><a class='options-page' href="{TRESNJAPANEL_LINK}" 
title="Tresnja Options Panel" role="menuitem" onclick="window.open('{TRESNJAPANEL_LINK}', 
'newwindow', 'width=300, height=250, resizable=yes , 
scrollbars=yes'); return false;"><i class="fa fa-diamond" 
aria-hidden="true"></i>Tresnja Options Panel</a></li>

所以当我打开选项页面时,我有一些选项和功能,包括复选框,输入等......

我有功能:

function stickyheaddsadaer(obj) {
  if($(obj).is(":checked")){
    alert("Yes checked"); //when checked
    $("#page-header-inner").addClass("sticky");
  }else{
    alert("Not checked"); //when not checked
  }

}

<input type="checkbox" name="TT_sticky_header" id="TT_sticky_header_function" 
value="{TT_sticky_header}" onclick="stickyheaddsadaer()"/>

此功能仅适用于选项页面,因为当我单击保存并退出选项页面时,它在普通页面上不起作用...

或者如果我把这个功能包括输入类型=“复选框”在选项页面之外,那么再次工作....

请帮助我,我需要做什么才能在选项页面内工作javascrip?

谢谢

1 个答案:

答案 0 :(得分:0)

您在this内遗漏了stickyheaddsadaer(),最好使用onchange而不是onclick

  

使用它:

<input type="checkbox" name="TT_sticky_header" id="TT_sticky_header_function" 
value="{TT_sticky_header}" onchange="stickyheaddsadaer(this)"/>
  

而不是:

<input type="checkbox" name="TT_sticky_header" id="TT_sticky_header_function" 
    value="{TT_sticky_header}" onclick="stickyheaddsadaer()"/>