現在、私は少し論理的な問題を経験しています。タイルエンジンのいくつかのmapdataと、クリックされたタイルのx位置とy位置を計算するjQuery拡張機能を格納するオブジェクトがあるとします。
$(document).ready(function(){
var mapdata = {
dimensions: {x: 10, y: 10},
tileSize: 32
};
$.fn.getpos = function(type){
var xpos = $(this)%mapdata.dimensions.y;
var ypos = Math.floor($(this)/mapdata.dimensions.y);
else if(type == 'x')
return xpos;
else if(type == 'y')
return ypos;
else
return {x: xpos, y:ypos}
}
$('.tile').click(function(){
console.log($($(this).index('.tile')).getpos());
});
});
問題は私には明らかです。getpos()のスコープ内で使用できないmapdataオブジェクトにアクセスしようとしています。これを達成する方法はありますか?それ以外の場合は、作成するすべての拡張機能にmapdataを渡す必要があります。
前もって感謝します。よろしくお願いいたします。トーマス