其實在以前寫的非常多篇的背景音樂播放器(多首音樂可切換)的教學語法,裡面都有提到這樣的判斷語法,只是它並非主角,也因為它會隨著每個人的帳號與日誌名稱不同而有所不同,所以往往不容易讓網友搞清楚,常常在那一段判斷語法中弄錯一些字,造成判斷失敗!最近剛好又有人再次問到!索性抓出來獨立介紹一下這個判斷語法,這可以應用在許多地方,不只是背景音樂的判斷而已!

還是先將已經寫過的一些與背景音樂的文章列出來↓
最新版音樂播放器,可以播放Xuite影音檔(flv)以及傳統mp3, wma, 等音樂檔,播放器畫面
這個版本可以播Xuite Vlog裡面的flv音樂以及傳統.mp3格式的音樂檔。

http://blog.xuite.net/jeanson61/xuite/14946473網址裡面的語法有一段↓
var my_url = top.location.toString() ;
if (my_url.search(/^http://blog.xuite.net/jeanson61/xuite(/?|?.+)$/) != -1) {
         startFlag= 1;
} else if (my_url.search(/^http://blog.xuite.net/jeanson61/xuite/d+(/?|?.+)$/) != -1) {
         startFlag= 0;
} else {
         startFlag= 0;
}

這一段的Javascript語法就是在判斷現在的網址是什麼!這裡面因為文章編輯器會吃掉控制碼"反斜線",這上面反斜線都是改為全型字,要改為正常的半型的英數字,什麼是半型?什麼是全型?請看下圖↓

上面這張圖就顯示出反斜線的半型與全型字的不同。

前面語法的第這一段↓
if (my_url.search(/^http://blog.xuite.net/jeanson61/xuite(/?|?.+)$/) != -1) {
         startFlag= 1;
}
判斷的是:是否目前網頁是在帳號為jeanson61的日誌名稱為xuite的首頁!這裡補充說明Xuite的部落格網址特性是↓
http://blog.xuite.net/會員帳號/日誌名稱

所以目前各位正在看的這篇網址是↓
http://blog.xuite.net/jeanson61/xuite/17362055(參考瀏覽器的網址列就可以知道)

然後如果你點我頁面上方的日誌名稱"狗貓的家!Xuite名稱的由來&使用秘笈"會連結到http://blog.xuite.net/jeanson61/xuite,這是我這本日誌首頁的網址!所以在Xuite裡面的日誌網址有一些規則在,所以用這樣的規則去判斷我們現在是進入文章次頁還是個人日誌的首頁!所以我再以其他人的網站為例↓
http://blog.xuite.net/gloriayu/songbook,這是gloria的個人網誌的位址,她其實有兩本日誌,另外一本是:http://blog.xuite.net/gloriayu/blog。所以對應於上面的情況,它的判斷就會變成↓
if (my_url.search(/^http://blog.xuite.net/gloriayu/songbook(/?|?.+)$/) != -1) {
         startFlag= 1;
}
或是
if (my_url.search(/^http://blog.xuite.net/gloriayu/blog(/?|?.+)$/) != -1) {
         startFlag= 1;
}
這樣兩種!來分別在不同的日誌時的判斷語法!(當然反斜線都要改為半型)

那第二段的判斷就是判斷是否是在文章的網址次頁狀態,因為Xuite的日誌文章次頁就是在個人日誌首頁網址後端加上一個文章的流水號(文章編號),目前這篇http://blog.xuite.net/jeanson61/xuite/17362055,就是一個例子,17362055就是文章流水號!!

所以整段語法↓
var my_url = top.location.toString() ;
if (my_url.search(/^http://blog.xuite.net/jeanson61/xuite(/?|?.+)$/) != -1) {
         startFlag= 1;
} else if (my_url.search(/^http://blog.xuite.net/jeanson61/xuite/d+(/?|?.+)$/) != -1) {
         startFlag= 0;
} else {
         startFlag= 0;
}
第一段的判斷如果是符合的,就表示目前的網址在個人日誌首頁,所以startFlag=1;的意思就是是否要開始播放這的判斷參數就是真"true"!
所以後面第二段的判斷是否是在文章的網址次頁狀態, if (my_url.search(/^http://blog.xuite.net/jeanson61/xuite/d+(/?|?.+)$/) != -1) {
         startFlag= 0;
}
如果符合就是已經進入日誌文章次頁,所以自由欄位的背景音樂就不應該自動播放,於是startFlag= 0;
的意思就是"開始播放"這的判斷參數就是假"False"!於是當我們進入文章頁面時,我們在自由欄位的語法中有加以判斷,所以就不會自動播放音樂,讓文章的背景音樂跟自行欄位的音樂打架!

同樣的,如果用別人網頁的例子就會是像是↓
var my_url = top.location.toString() ;
if (my_url.search(/^http://blog.xuite.net/gloriayu/songbook(/?|?.+)$/) != -1) {
         startFlag= 1;
} else if (my_url.search(/^http://blog.xuite.net/gloriayu/songbook/d+(/?|?.+)$/) != -1) {
         startFlag= 0;
} else {
         startFlag= 0;
}

然後完整的單首背景音樂的自由欄位播放 判斷語法,就是如下↓
<script language="javascript">
var vlogMediaID="VzRDMnFILTU1ODE2NC5mbHY";
var repeatFlag=1;
var startFlag;
var tt1;

var my_url = top.location.toString() ;
if (my_url.search(/^http://blog.xuite.net/jeanson61/xuite(/?|?.+)$/) != -1) {
         startFlag= 1;
} else if (my_url.search(/^http://blog.xuite.net/jeanson61/xuite/d+(/?|?.+)$/) != -1) {
         startFlag= 0;
} else {
         startFlag= 0;
}
tt1="<iframe marginwidth='0' marginheight='0'frameborder='0' scrolling='no'"
   +" width='185px' height='65px' src='http://vlog.xuite.net/vlog/guest/external.php?media_id="
   + vlogMediaID+"=&pt=2&ar="+repeatFlag+"&as="+startFlag+"'></iframe>";
document.write(tt1);
</script>

將上面語法就是如前面介紹的,jeanson61xuite改掉,改成你自己的帳號與日誌名稱,至於你的背景音樂,請參考這一篇:http://blog.xuite.net/jeanson61/xuite/13068194教學,去找出上傳到Xuite Vlog裡面的影音ID(media_id流水號),然後填入↓
var vlogMediaID="VzRDMnFILTU1ODE2NC5mbHY";
裡面的紅色字體的部份!
至於如果要反覆播放這一單首的背景音樂的話就是↓
var repeatFlag=1;
反之,如果不想反覆播放(就播放一次),就是↓
var repeatFlag=0;

就這樣啦!有問題再問了!



隨機文章


  • 歡迎來到隨意窩Xuite

    開啟選單瀏覽服務或以關鍵字搜尋。

     
  • 瀏覽更多精彩內容

    切換至格主其他頻道或直接搜尋。

     
  • 快速便利分享工具

    提供多種分享方式傳遞內容資訊。

     
  • 更多推薦APP

    隨意遊與隨食記app僅支援ios裝置。