iT邦幫忙

1

iframe問題請教

  • 分享至 

  • xImage

各位好

我有一個專案,是用.net mvc寫的,我目前又寫了一個靜態網頁A,然後我使用iframe把我靜態網頁A嵌在我專案裡面…
現在有一個狀況就是我的專案裡面因為弄了iframe有一個卷軸,然後外面又一個卷軸,就變成一個網頁有兩個卷軸,很不好看也不好使用,但我其實也不一定要用iframe,我只要能夠把呈現iframe內的靜態網頁A在我的專案裡面就好,請問大家都用什麼方法呢?

PS:我的靜態網頁已經使用IIS架設起來了!!!
若說明不夠清楚,再請跟我說,謝謝

看更多先前的討論...收起先前的討論...
dragonH iT邦超人 5 級 ‧ 2019-09-10 09:51:43 檢舉
有什麼原因不寫在一起呢?

iframe 卷軸的問題應該可以用 css 拿掉

問題是你的 iframe 會有需要用到捲軸嗎
ccutmis iT邦高手 2 級 ‧ 2019-09-10 10:05:28 檢舉
<iframe src="" scrolling="no"></iframe>
或用css
iframe { overflow: hidden; }
YoChen iT邦研究生 1 級 ‧ 2019-09-10 10:11:55 檢舉
您可以考慮直接把內容寫到您mvc專案的cshtml裡面~
klm2242 iT邦研究生 1 級 ‧ 2019-09-10 10:16:57 檢舉
dragonH 您好…我的iframe的捲軸我不想要…不寫在一起是因為管理上的因素…一言難盡
klm2242 iT邦研究生 1 級 ‧ 2019-09-10 10:21:59 檢舉
ccutmis 您好…我有把iframe設定 scrolling="no",但有一個狀況就是因為我資料內容的部份height要手動設定,有何方法高度可以針對內容自動去縮放呢???
剛好用到,倒數第二行,可以用DIV去套外框範圍
<body>
<div>
<form action="./" method="post" id="formHidden">
<input type="hidden" value="" name="vexpanded" id="vexpanded"/>
</form>
</div>
<% Response.WriteFile("/include/inclz9.html"); %>
</body>
dragonH iT邦超人 5 級 ‧ 2019-09-10 11:06:21 檢舉
@klm2242

不需要卷軸的話就好辦了阿

拿掉就好了

我補充在下方了
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
2
小魚
iT邦大師 1 級 ‧ 2019-09-10 10:09:12

或許可以考慮使用ASP.NET MVC的 Partial ?
你還可以帶參數進去.

klm2242 iT邦研究生 1 級 ‧ 2019-09-17 16:31:40 檢舉

謝謝!!

3
dragonH
iT邦超人 5 級 ‧ 2019-09-10 10:56:32

首先

在 iframe tag 上添加 scrolling = "no"

來拿掉捲軸

<iframe src = "/Frame.html" id = "myIframe" scrolling = "no" ></iframe>

再針對 iframe 內容 來調整高度

要注意可能會有 margin/padding 的問題

所以實際高度可能會需要調整

const myIframe = document.querySelector('#myIframe');
myIframe.onload = () => {
  const contentHeight = myIframe.contentWindow.document.body.scrollHeight + 10;
  myIframe.height = contentHeight;
}

codepen 會有 same-origin 的問題就不貼了/images/emoticon/emoticon11.gif

klm2242 iT邦研究生 1 級 ‧ 2019-09-17 16:31:47 檢舉

謝謝!!

0
舜~
iT邦高手 1 級 ‧ 2019-09-11 10:18:33

提供一個思路~

1.讓iframe自適性內部高度
2.這樣iframe的卷軸就用不到可以拿掉了

klm2242 iT邦研究生 1 級 ‧ 2019-09-17 16:31:52 檢舉

謝謝!!

我要發表回答

立即登入回答