Re: [問題] iframe裡的字型放大

看板Web_Design作者 (( ̄ー+ ̄)キラリ)時間14年前 (2011/10/02 02:27), 編輯推噓1(1026)
留言27則, 4人參與, 最新討論串2/2 (看更多)
※ 引述《mqazz1 (無法顯示)》之銘言: : 因為看了前幾篇有在討論iframe裡的東西放大 : 可是我試了之後沒有成功 : 這邊是我的檔案 http://www.megaupload.com/?d=B1H1JHOH : index.html跟book.html是主要的檔案 : 目前只需要讓字型放大就可以了 : 圖片跟影片可以暫時不用 : 請問有人知道這個要怎麼改嗎? : 謝謝 剛剛抓了你的檔案來看了一下, 發現你index.html有一的大的iframe, 此iframe裡面似乎有包了兩個iframe。 所以,我這邊先抓出第一層之後, 再接著去抓第二層。 我是修改 index.html的部分: function chgZoom(num) { try{ /* get layer-1 iframe */ var iframe = document.getElementById("page1"); var y = (iframe.contentWindow || iframe.contentDocument); //console.log(y); if (y.document) y=y.document; /* get layer-2 iframe */ var iframe2 = y.getElementById("page"); var z = (iframe2.contentWindow || iframe2.contentDocument); if (z.document) z=z.document; /* get Title span by tag name @ positon 1 */ var span1 = z.getElementsByTagName('span')[1]; /* set Font size */ span1.style.fontSize='30pt'; /* change bg-color */ z.body.style.backgroundColor="blue"; ....其他省略 }catch(e){ //console.error(e); } } 這只是抓左邊的小iframe做修改而已, 右邊的iframe就用上面方法如法炮製。 至於,各別的 字體大小調整, 你可以在一個一個做設定,這邊我只有改標題的文字大小。 大致上是這樣。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.136.175.21

10/02 11:08, , 1F
這個問題我也有抓下來測試過.. 我測試Body.style 卻發現
10/02 11:08, 1F

10/02 11:08, , 2F
他每個都有自訂大小.. 就懶得改了= =
10/02 11:08, 2F

10/02 12:18, , 3F
沒錯~ 所以我只改一個 當範例測試 XD
10/02 12:18, 3F

10/02 16:19, , 4F
除非設定抓全部的 tag ..
10/02 16:19, 4F

10/03 14:06, , 5F
設定 iframe.contentDocument.body.style.zoom=1.5 就好
10/03 14:06, 5F

10/03 14:07, , 6F
所有東西都會直接放大 50%
10/03 14:07, 6F

10/03 14:09, , 7F
iframe 跨網域的就沒辦法改了
10/03 14:09, 7F

10/03 14:13, , 8F
另外,最好在 iframe onload 時才觸發 zoomer()
10/03 14:13, 8F

10/03 23:11, , 9F
感謝tyf大的意見 可是我設3倍 它裡面的字好像沒有放大..
10/03 23:11, 9F

10/03 23:11, , 10F
不知道是不是我有甚麼地方用錯
10/03 23:11, 10F

10/03 23:11, , 11F
感謝kilfu大的回答
10/03 23:11, 11F

10/03 23:11, , 12F
現在我是用迴圈整個暴力把tag相符的用好了
10/03 23:11, 12F

10/03 23:11, , 13F
都是大標題的放大
10/03 23:11, 13F

10/03 23:12, , 14F
能不能請問小字形的部分要怎麼做嗎?
10/03 23:12, 14F

10/03 23:12, , 15F
10/03 23:12, 15F

10/03 23:12, , 16F
萬分感激!!
10/03 23:12, 16F

10/04 01:06, , 17F
依你目前的寫法 可以稍微修改一下 如下:
10/04 01:06, 17F

10/04 01:07, , 18F
/* set original size is 100% */
10/04 01:07, 18F

10/04 01:07, , 19F
var current_num = 1;
10/04 01:07, 19F

10/04 01:08, , 20F
function chgZoom(num) {
10/04 01:08, 20F

10/04 01:08, , 21F
... 中間全部省略
10/04 01:08, 21F

10/04 01:09, , 22F
var test=parseInt(s[i].style.fontSize.replace('/pt
10/04 01:09, 22F

10/04 01:10, , 23F
',''),10)*num/current_num;
10/04 01:10, 23F

10/04 01:11, , 24F
... 中間略過
10/04 01:11, 24F

10/04 01:11, , 25F
/* save new resize into current_num */
10/04 01:11, 25F

10/04 01:11, , 26F
current_num = num;
10/04 01:11, 26F

10/04 01:12, , 27F
}catch(e){ }
10/04 01:12, 27F
文章代碼(AID): #1EXrk5qS (Web_Design)
文章代碼(AID): #1EXrk5qS (Web_Design)