内に表示される SVG ファイルがありますUIWebView
。この SVG には、<a>
タッチ可能な要素を示す多数のタグが含まれています。SVG ファイルを読み込んだ後、特定の要素が画面の中央近くに表示されるようにビューをスクロールしたいと思います。
私がこれまでに持っているものは次のようなものです:
- (void)webViewDidFinishLoad:(UIWebView *)webView
{
[diagramView stringByEvaluatingJavaScriptFromString:@""
"var e = document.getElementById('myelement');"
"var top = e.offsetTop;"
"while (e.offsetParent) {"
" e = e.offsetParent;"
" top += e.offsetTop;"
"}"
"alert(top);"
//"scrollTo(0, top);"
];
}
ただし、top
これが実行されるたびに最終的に 0 になります。要素は、SVG ファイルe
の正しい要素を指してい<a>
ます ( でチェックされますalert(e.id)
)。実際のオフセットを与える要素属性の適切な組み合わせが見つからないようです。
適切なオフセット セットをハード コードすることはできますが、実際にはそうしたくありません。