関数の外側で javascript var を宣言すると、必要に応じてその関数内で使用できるようになると常に考えていました。
以下のコードに問題があります。get_value 関数をトリガーするボタンをクリックすると、コンソールは tween 変数が未定義であると通知します。
<script>
$(document).ready(function()
{
var timeout_val = 0;
var stage = new Kinetic.Stage({
container: 'stage',
width: 940,
height: 50
});
var layer = new Kinetic.Layer();
var line = new Kinetic.Line({
points: [10, 10, 100, 10],
stroke: '#FF0000'
});
layer.add(line);
stage.add(layer);
var xTo = stage.getWidth() - 10;
var tween = new Kinetic.Tween({
node: line,
duration: 5,
points: [10, 10, xTo, 10]
});
});
function get_value(){
$.ajax({
type: "GET",
url: "players.php",
data: {}
}).done(function( result ) {
if (result != "Timeout Error") {
$("#players").html(result);
}
$("table").tablesorter({widgets: ["zebra"], sortList: [[1,1], [0,0]]});
timeout_val = window.setTimeout(get_value, 5000);
});
tween.reset();
tween.play();
}
</script>
違いがある場合、このスクリプト ブロックは私のページの頭の中にあります。
次に、このように記述された単純な入力ボタンを使用して get_value 関数を呼び出します。
<input type="button" name="submit" id="submit" value="submit" onClick = "get_value();" />
なぜこれが機能しないのか途方に暮れています。教えていただければ幸いです
クローズさんありがとう