LifeType 中文開發論壇

支援 => 使用與操作 => 主題作者是: Stud 於 九月 25, 2005, 03:18:42 下午



主題: javascript 的問題,有點怪.
作者: Stud九月 25, 2005, 03:18:42 下午
爬了許多文,連英文官網也去看過了,不過都沒解決方式.
我曉得在Smarty Templates裡,不大支援javascript,不過有
個緩衝方式,就是加個{literal}{/literal}標示,我也試過了.

我的問題是,有一段 javascript 會呼叫幾張圖來隨機顯示.
格式有 flash, gif 都有.在 php 底下都是正常,每張圖都會
顯示出來,但在 Smarty 底下,怎麼顯示都是 flash 那張而已,
其餘的圖就無法顯示.如果 javascript 不正確,應該連 flash
也無法出現才對,那為何一個可以,其他的又不行呢?

我也試過 {ldelim}{/rdelim} 跟 {smarty.ldelim}{smarty.rdelim}
效果都是一樣,很傷腦筋.

不好意思,問題那麼多.謝謝各位的幫助!


主題: Re: javascript 的問題,有點怪.
作者: lss九月 26, 2005, 09:24:48 上午
把 code 貼出來!


主題: Re: javascript 的問題,有點怪.
作者: markwu九月 27, 2005, 10:31:14 上午
還是要看你的程式才知道,這樣很難猜。

{literal}...{/literal}

只是用來把這個 block 內的文字當成一般網頁來看。所以讓 smarty 不會對 { 與 } 這兩個符號誤判。

Mark


主題: Re: javascript 的問題,有點怪.
作者: Stud九月 29, 2005, 09:34:13 上午
sorry,這幾天比較忙,所以沒上來看,先謝謝各位的回覆了,底下是我的code碼.

<script language='JavaScript' type='text/javascript' src='http://ads.metro.com.tw/adx.js'></script>
<script language='JavaScript' type='text/javascript'>
<!--
   if (!document.phpAds_used) document.phpAds_used = ',';
   phpAds_random = new String (Math.random()); phpAds_random = phpAds_random.substring(2,11);
   
   document.write ("<" + "script language='JavaScript' type='text/javascript' src='");
   document.write ("http://ads.metro.com.tw/adjs.php?n=" + phpAds_random);
   document.write ("&amp;what=zone:2");
   document.write ("&amp;exclude=" + document.phpAds_used);
   if (document.referrer)
      document.write ("&amp;referer=" + escape(document.referrer));
   document.write ("'><" + "/script>");
//-->
</script><noscript><a href='http://ads.metro.com.tw/adclick.php?n=a9e994b3' target='_blank'><img src='http://ads.metro.com.tw/adview.php?what=zone:2&amp;n=a9e994b3' border='0' alt=''></a></noscript>


主題: Re: javascript 的問題,有點怪.
作者: markwu九月 29, 2005, 11:36:19 上午
你的 script 看起來沒問題阿?你能讓我看你安插這一段 script 的網頁嗎?(我說的是網址喔,我想看看他的效果)

Mark


主題: Re: javascript 的問題,有點怪.
作者: Stud九月 29, 2005, 12:07:50 下午
這是PHP頁顥示OK http://www.metro.com.tw/index.php
這是Smarty頁 http://blog.metro.com.tw
如果沒看見,按幾次 reload 就可以,原因就出在 GIF 那個跑不出來.
另外,mark 我有私事想請教你,不曉得方不方便?


主題: Re: javascript 的問題,有點怪.
作者: markwu九月 29, 2005, 01:08:27 下午
這是PHP頁顥示OK http://www.metro.com.tw/index.php
這是Smarty頁 http://blog.metro.com.tw
如果沒看見,按幾次 reload 就可以,原因就出在 GIF 那個跑不出來.
另外,mark 我有私事想請教你,不曉得方不方便?

你是用 IE 嗎?IE 的確是不正常,但是 FF 一切正常。

你有啟動 http_cache 嗎?可以先 disable 試試嗎?

BTW, 你可以 PM 我阿!

Mark


主題: Re: javascript 的問題,有點怪.
作者: Stud九月 29, 2005, 05:05:25 下午
我是用IE沒錯,把http_cache關掉還是一樣無法顯示.


主題: Re: javascript 的問題,有點怪.
作者: markwu九月 30, 2005, 12:20:28 上午
我比較了 Opera, FF, IE,我發現只有 IE 會無法顯示。

後來我比較了你的原始碼,我發現你的下面這一段程式:

程式碼:
<noscript><a href='http://ads.metro.com.tw/adclick.php?n=aa9b4dec' target='_blank'>
<img src='http://ads.metro.com.tw/adview.php?what=zone:2&amp;n=aa9b4dec' border='0' alt='¤j³£·|¼s§i'></a>
</noscript>

你的 alt 中的『大都會廣告』變成了亂碼,原因可能是你存檔時存成 Big5 而非 UTF-8 without BOM .... 你只要把設定 IE 的檢視>>編碼>>繁體中文(big5)你就會發現廣告出來了。

ㄟ.... 這真是不應該發生的錯誤啊!  :-P

請把他重新編輯,然後存成 UTF-8 without BOM 吧!

Mark


主題: Re: javascript 的問題,有點怪.
作者: Stud九月 30, 2005, 11:25:08 下午
你的 alt 中的『大都會廣告』變成了亂碼,原因可能是你存檔時存成 Big5 而非 UTF-8 without BOM .... 你只要把設定 IE 的檢視>>編碼>>繁體中文(big5)你就會發現廣告出來了。
ㄟ.... 這真是不應該發生的錯誤啊!  :-P
請把他重新編輯,然後存成 UTF-8 without BOM 吧!
Mark
這些我都試了,把 alt="" 也是一樣不行,只能顯示 flash 的.


主題: Re: javascript 的問題,有點怪.
作者: markwu十月 01, 2005, 12:41:04 上午
重點是:

引用
然後存成 UTF-8 without BOM


你能確定你存的檔案是正確的 UTF-8 without BOM ?

Mark


主題: Re: javascript 的問題,有點怪.
作者: Stud十月 01, 2005, 08:17:53 上午
重點是:

引用
然後存成 UTF-8 without BOM


你能確定你存的檔案是正確的 UTF-8 without BOM ?

Mark
100%確定!再說,若不是存成without BOM,頁面不是也
無法顯示嗎?其他頁的中文也會變亂碼啦,所以我確
定是正確的,我在存檔時有特別再看了一下.


主題: Re: javascript 的問題,有點怪.
作者: lss十月 01, 2005, 03:11:21 下午
這個測試結果不知對你的除錯有沒有幫助?

我直接從原始碼裡面,把廣告圖檔 img 標籤的 src 屬性直接當 url 連結。理論上應該會出現你的廣告圖檔,可是卻出現錯誤訊息。

從原始碼抓到的 src 屬性: http://ads.metro.com.tw/adview.php?what=zone:2&amp;n=aa9b4dec

錯誤訊息(IE 與 Fx 都一樣)
引用

Warning: join(): Bad arguments. in /forum/ads/libraries/lib-log.inc.php on line 278

Warning: Cannot modify header information - headers already sent by (output started at /forum/ads/libraries/lib-log.inc.php:278) in /forum/ads/libraries/lib-io.inc.php on line 127

Warning: Cannot modify header information - headers already sent by (output started at /forum/ads/libraries/lib-log.inc.php:278) in /forum/ads/libraries/lib-io.inc.php on line 233

Warning: Cannot modify header information - headers already sent by (output started at /forum/ads/libraries/lib-log.inc.php:278) in /forum/ads/libraries/lib-io.inc.php on line 235

Warning: Cannot modify header information - headers already sent by (output started at /forum/ads/libraries/lib-log.inc.php:278) in /forum/ads/libraries/lib-io.inc.php on line 233

Warning: Cannot modify header information - headers already sent by (output started at /forum/ads/libraries/lib-log.inc.php:278) in /forum/ads/libraries/lib-io.inc.php on line 235

Warning: Cannot modify header information - headers already sent by (output started at /forum/ads/libraries/lib-log.inc.php:278) in /forum/ads/adview.php on line 218

問題應該出現在第一行錯誤訊息吧!


主題: Re: javascript 的問題,有點怪.
作者: Stud十月 01, 2005, 06:42:09 下午
這個測試結果不知對你的除錯有沒有幫助?
我直接從原始碼裡面,把廣告圖檔 img 標籤的 src 屬性直接當 url 連結。理論上應該會出現你的廣告圖檔,可是卻出現錯誤訊息。
從原始碼抓到的 src 屬性: http://ads.metro.com.tw/adview.php?what=zone:2&amp;n=aa9b4dec
錯誤訊息(IE 與 Fx 都一樣)
問題應該出現在第一行錯誤訊息吧!
感謝,那一行出錯的問題我解決了,原因是偵測user location的檔案不見了.
不過,雖然用上面的url可以顯示圖,但在header.template裡的javascript一樣
無法顯示圖.


主題: Re: javascript 的問題,有點怪.
作者: markwu十月 03, 2005, 12:20:01 下午
Hi Stud:

你可以拿原來 pLog 的安裝內的 header.template 來重改嗎?先什麼都不改,只把那一段 javascript 加上去。alt 內的文字也先都不加。

只想先做個對照組來實驗。

為什麼我還是猜編碼問題,因為你的網頁在 FF/OPERA 是對的,只是在 IE 無法顯示(但是改成 big5 卻會出來)。

Mark


主題: Re: javascript 的問題,有點怪.
作者: lss十月 03, 2005, 01:45:08 下午
請問一下:

img 的 src 屬性的網址裡, http://ads.metro.com.tw/adview.php?what=zone:2&amp;n=aa9b4dec
紅色那一段難道是指定圖檔的檔名嗎?如果是,試試使用英文檔名看看能否正常。