2011-01-31 23 views
3

iPhoneで古いイントラネットアプリケーションを持っていきたいです。含ま は、フレーム内に配置されているメニュー領域を非表示にする機能である:Safari/iPhoneでフレームサイズを変更する

<frameset id="myFrameSet" cols="150,*"> 
    <frame id="menuFrame" SRC="menu.aspx" /> 
    <frame id="mainFrame" SRC="main.aspx" /> 
</frameset> 

メニュー最小限にメニューフレームを隠蔽iconingを含有します。そのために私はこのJavaScript式を使用します:

top.document.getElementById('myFrameSet').cols = "20,*"; 

これは現在のすべてのデスクトップブラウザでうまくいきます。しかし、iPhoneやiPadのSafariにはない。これをデバッグすると "cols"属性が正しく変更されたように見えますが、フレームサイズは元の位置に残ります。

これに関するご提案はありますか?またはフレームサイズのクライアント側を変更する任意の異なる方法ですか?

答えて

0

率直に言えば、私はフレームを全く使わないという解決策に取り組んでいます。アクセシビリティに問題があるため、今日のWebではフレームの使用がほとんど推奨されておらず、モバイルや小型のデバイスでは、これらの問題はさらに顕著になります。

トップフレームをすべてのページの<div>としてトップパネルに変換することを検討してください。このページは、CSS position:fixed; top:0;を使用して配置して画面上部に貼り付けることができます。 JSを使用してdivのサイズを直接調整できます。あなたに具体的な例が必要かどうか私に尋ねてください。

関連する問題