0
我有一種感覺,這很容易,但是,我一直在爲它工作了幾個小時,並沒有取得成功。添加功能提交按鈕
我使用的淺體模態窗口的iframe版本:
http://davidwalsh.name/facebook-lightbox
我試圖找到一個很好的方法,使當他們按下提交按鈕,我添加到面板表單提交。我迄今發現的最好的是:
light = new LightFace.IFrame({ height:440, width:550, url: 'http://samplePage.html',
title: 'Sample' }).addButton('Submit', function() {
window.frames[window.frames.length-1].formName.submit();},'blue')
.addButton('Close', function() {light.close(); },true).open();
我不是很有信心,此代碼,但我認爲對於提交它得到我只是通過假設它是倒數第二人找的iframe。這適用於網頁。不幸的是,我正在爲Facebook應用加載Facebook iframe本身。當在Facebook頁面中加載時,代碼不會執行任何操作。
有沒有人有更好的方式把提交按鈕放在這個?
@卡斯米爾當我嘗試它時,這沒有奏效。據我所知,它的工作原理與我所做的一樣。 $('#myForm')。submit();'does not work but'window.frames [window.frames.length-1]。$('#myForm')。submit();'did work(雖然只有它自己的網頁不在facebook iframe視圖中)。我認爲JavaScript在父頁面上執行,所以我需要能夠在運行提交之前深入到iframe。我可以設置ID的名稱,並試圖與此工作,但我沒有運氣。 – user967891
好的,也許你可以嘗試一種不同的方法,不要使用Lightface中的「內置」方法。所以,只需在iframe中添加一個帶inline javascript的事件監聽器:'(script type =「text/javascript」> $('myForm')。addEvent('click',function(el){el.submit();} );'。此外,如果問題可能與使用Facebook iframe時未顯示的元素有關,則可以嘗試Lightface中的getBox()方法。 – kasimir
使用getBox()方法得到它的工作。這實際上得到了iframe所在的表格,但從那裏開始,並不是很難到達iframe。謝謝您的幫助。 – user967891