「css」jQueryメソッドを使用して(ページの読み込み時に)マージンを変更するこの関数があります...
function page_change() {
var h = window.location.hash;
switch (h) {
case 'home':
$('.page-slide-box').css({marginLeft: 0});
break;
case 'history':
$('.page-slide-box').css({marginLeft: '-820px'});
break;
// more cases here.....
}
}
...しかし、ページが読み込まれた後、代わりに変更をアニメーション化したいと思います。次のように、(別の冗長な関数を記述するのではなく)replace() を使用して既存の関数を変更できると考えていました。
window.onhashchange = function() {
var get = page_change.toString();
var change = get.replace(/css/g, 'animate');
page_change();
}
これにより、page_change() 関数で「css」のすべてのインスタンスが「animate」に正常に変更されます。文字列を置き換えたら、この関数を動的に変更するにはどうすればよいですか? それとも、これは単に悪い考えですか?