2016年9月9日 星期五

[PHP套件]Composer的使用小說明

Composer 套件相依性管理工具應該是目前最流行之一的工具

詳細介紹部分可以看這個作者寫的:COMPOSER設計原理與基本用法

也是這篇看完才解開我的疑惑 (網海資源在太多,但是要找到看得懂的真的要花時間)

安裝教學也很多,就先不提了。直接跳到使用!

Win系統使用說明如下:
  1. 在專案資料夾下建立檔案:composer.json

    composer.json範例
    {
    "require": {
    "phpmailer/phpmailer": "~5.2.7"
    }
    }

  2. 開啟命令提示字元(CMD),切換到專案資料夾
  3. 輸入composer install執行


  4. 資料夾內多了一個composer.lock檔案以及vendor目錄。只要載入"vendor/autoload.php"就可以開始使用phpmailer了

    require 'vendor/autoload.php';
    $phpmailer = new PHPMailer;
其實不難阿~(知道原理跟由來比較重要^___^)





2016年6月22日 星期三

[javascript] preventDefault() 方法

preventDefault() 方法阻止元素發生默認的行為

例如說我們對<a>用js方式加入click事件,

可是我們不希望他執行href

就可以在事件內加入

 preventDefault();

這樣就不會執行了。

有時候很方便使用哦~

舉例:


<script type="text/javascript">
$(document).ready(function(){
  $("a").click(function(event){
    event.preventDefault();
  });
});
</script>

<a href="http://w3school.com.cn/">W3School</a>
<p>preventDefault() 方法防止打開URL。</p>










以上資料出處:jQuery 事件 - preventDefault() 方法

2016年6月15日 星期三

[?]在網站裡面嵌入多個影片 By Youtube Iframe API

這次做的網站,是一頁橫幅網站。

裡面嵌入很多個youtube影片,然而要在影片上有一個圖片來擋著它們。

除了擋住之外,還要在影片播完之後能夠自動往下一個影片的位置移動。
(ps.但是移動這個,我就不說 XD)

這次用的是youtube的iframeAPI來產生影片,

參考網站寫法
<!DOCTYPE html>
<html>
  <body>
    <!-- 1. The <iframe> (and video player) will replace this <div> tag. -->
    <div id="player"></div>

    <script>
      // 2. This code loads the IFrame Player API code asynchronously.
      var tag = document.createElement('script');

      tag.src = "https://www.youtube.com/iframe_api";
      var firstScriptTag = document.getElementsByTagName('script')[0];
      firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);

      // 3. This function creates an <iframe> (and YouTube player)
      //    after the API code downloads.
      var player;
      function onYouTubeIframeAPIReady() {
        player = new YT.Player('player', {
          height: '390',
          width: '640',
          videoId: 'M7lc1UVf-VE',
          events: {
            'onReady': onPlayerReady,
            'onStateChange': onPlayerStateChange
          }
        });
      }

      // 4. The API will call this function when the video player is ready.
      function onPlayerReady(event) {
        event.target.playVideo();
      }

      // 5. The API calls this function when the player's state changes.
      //    The function indicates that when playing a video (state=1),
      //    the player should play for six seconds and then stop.
      var done = false;
      function onPlayerStateChange(event) {
        if (event.data == YT.PlayerState.PLAYING && !done) {
          setTimeout(stopVideo, 6000);
          done = true;
        }
      }
      function stopVideo() {
        player.stopVideo();
      }
    </script>
  </body>
</html>
<script>的語法是在頁面上先產生 <script src="https://www.youtube.com/iframe_api"></script>
然後透過這api,它會自動呼叫 onYouTubeIframeAPIReady 這個function,然後就會產生一個影片....(對,只會產生一個)

但是我們要的是產生多個影片啊!
所以我多寫幾次就可以了....NO!((因為我試過 T^T))

其實可以用以下方式修改,
就是在寫一隻function,放在onYouTubeIframeAPIReady讓它去執行,就可以了。至於這隻fuction就看設計者的想法囉~=)




ps.感覺真隨興阿

2016年4月28日 星期四

2016年4月19日 星期二

[javascript]我想要修改回上一頁的紀錄 之 新增瀏覽歷史紀錄

嗶嗶嗶~

今天又收到新的指令。

當我們登出後,如果按一下「回上一頁」的按鈕 ((比如說瀏覽器上的回上頁按鈕,或是快速鍵ALT + ←))

怎麼還是會顯示已經登入的畫面?! 我不要我不要~ ((好吧,我是誇張了點))

2016年4月13日 星期三

[ASP .NET MVC] 用IE執行上傳檔案後,回傳JSON格式來回報上傳狀況,結果卻是下載JSON ?!

日前上傳檔案後用JSON來回報上傳狀況,

在chrome瀏覽器測試,一切正常。

後來在IE上測試,卻一直變成下載JSON檔案,導致後面的js碼都不會執行 ((當時臉都囧了))