2016-10-08 3 views
2

私の関数 "rfrsh()"はHTMLファイルの中にあるときに動作しますが、外部のjavascriptファイルに置くともう機能しません。ここに私のコード関数外部のjavascriptファイルに置いたときにrfrsh()が機能しない

/* JavaScript */ 
 

 
$(document).ready(function() { 
 
     
 
    function rfrsh() { 
 
     $("iframe").each(function() { 
 
      var src= $(this).attr('src'); 
 
      $(this).attr('src',src); 
 
     }); 
 
    }   
 
});
<!-- HTML --> 
 

 
<div id="circtraff" class="tab-pane active"> 
 
    <ul class="nav nav-pills" id="circtraff_tabs"> 
 
    <li><a href="#circtraff_realtime" data-toggle="tab" onClick="rfrsh()"><i class="glyphicon glyphicon-dashboard" aria-hidden="true"></i>&nbsp; Real-time Traffic</a></li> 
 
    <li><a href="#circtraff_last24" data-toggle="tab" onClick="rfrsh()"><i class="glyphicon glyphicon-time" aria-hidden="true"></i>&nbsp; Last 24 Hours</a></li> 
 
    </ul> 
 
</div>

jsの他のすべての機能は、リフレッシュ機能を除いて取り組んでいます。

+2

あなたは[MCVE]提供されていませんでしたが、最も可能性の高いあなたがHTML要素が初期化された後JSをロードし、それゆえに失敗しますその機能を見つける...ブラウザコンソールで確認する必要があります... JQueryを使用して、コントロールのイベントを一貫して聞くために購読すると、それが解決される可能性があります([MCVE]なしでは答えられません)。 –

答えて

1

これは、rfrsh機能が$(document).ready()機能のローカルになっているためです。あなたのHTML onClickイベントで使用可能にするには、window名前空間でそれを定義し、そのよう:

window.rfrsh = function() { /* ... */ };

関連する問題