2009-11-23 12 views
7

extJSを使用してウィンドウ内にミニブラウザを作成しようとしています。ここでextjsを使用してブラウザ内にウィンドウブラウザを作成

は私がこれまで持っているものです。

panelContent = new Ext.Panel({ 
     region: 'center', 
     margins: '0 0 0 0', 
     autoScroll: true, 
     html: '<iframe style="overflow:auto;width:100%;height:100%;" frameborder="0" src="http://www.google.com"></iframe>' 
    }); 
var tb = new Ext.Toolbar(); 
var combo = new Ext.form.ComboBox({ 
    width:435, 
    }); 
tb.addField(combo); 
tb.doLayout(); 
browser = new Ext.Window({ 
     title: 'Internet Browser', 
     tbar: tb, 
    closable: true, 
     closeAction: 'hide', 
     width: 600, 
     height: 600, 
     border:false, 
     plain: true, 
     layout: 'border', 
     items: [panelContent], 
}); 

私は、IFRAMEがコンボボックスの内側に入力された何のコンテンツをロード取得しようとしているが、私は彼を「伝える」する方法を見つけることができませんページを読み込むと、ユーザーが「入力」を押すと「取得」できなくなってしまいます。たぶんinputboxでコンボボックスを置き換えますか?これを行う方法(extjsで始まる)を知らないでください。

ありがとうございました。

答えて

15

あなたはこれを試すことができます。

Ext.IframeWindow = Ext.extend(Ext.Window, { 
onRender: function() { 
    this.bodyCfg = { 
     tag: 'iframe', 
     src: this.src, 
     cls: this.bodyCls, 
     style: { 
      border: '0px none' 
     } 
    }; 
    Ext.IframeWindow.superclass.onRender.apply(this, arguments); 
} 
}); 

var w = new Ext.IframeWindow({ 
id:id, 
width:640, 
height:480, 
title:"Knowledge Control Solutions Iframe Window Sample", 
src:"http://www.google.es" 
}) 


w.show(); 

よろしく

+0

おかげで、これは完全に私はほとんどそれが窓のdivの内側にインラインフレームで作業を持っていた、私の謎を解決し、それはIE6、IE7で失敗しましたこれはどこでもうまくいきます。 もう一度、ハックのおかげです。 –

+0

IframeWindowでアニメーションを有効にする方法はありますか? –

6

Ext JSでiframeを扱うことに真剣なら、実際にはManagedIFrame user extensionを使用してください。 Ext内の生のiframe(特にレイアウト内)を使って作業することは、最初からやり直すのが最も簡単なことではありません。

関連する問題