2016年4月27日水曜日

【HTML5/Javaccript/css】input要素でカーソルを外す方法

input要素にreadonly設定すると、入力不可になります。
ただし、これでは、フォーカル取得可能ですので、カーソルが表示されます。
そこで、これを防止する手段を実装してみました。

以下のサイトのように結構皆さん苦労しているようです。
http://qiita.com/kokoe/items/9ff51d1eb990d8238e83
http://oshiete.goo.ne.jp/qa/257482.html


1、readonly属性の場合 
下の画像のように04の前に入力カーソル(入力位置表示)が表示されます。

ソースコードは以下のようにした場合です。

【HTML5】
<input class="datepic" type="text" id="from_date" readonly>

【CSS】
.datepic {
    border:1px solid white ;     /* 枠線の装飾 */
    border-radius: 3px;         /* CSS3 */
    -moz-border-radius: 3px;    /* Firefox */
    -webkit-border-radius: 3px; /* Safari,Chrome */
    height:20px;

    vertical-align:middle;
    text-align:center;
    cursor:auto;
}

2、disabled属性の場合  

下のコードのように記述することで、入力カーソルが表示されなくなります(下画像)。


ソースコードは以下のようにした場合です。
赤字のように、readonlyをdisabledに変更します。
CSSで背景(background-color)と文字色(color)を設定します。

【HTML5】
 <input class="datepic" type="text" id="from_date" disabled>

 【CSS】
.datepic {
    border:1px solid white ;     /* 枠線の装飾 */
    border-radius: 3px;         /* CSS3 */
    -moz-border-radius: 3px;    /* Firefox */
    -webkit-border-radius: 3px; /* Safari,Chrome */
    height:20px;

    vertical-align:middle;
    text-align:center;

    color:white;
    background-color:black;

    cursor:auto;


2016年4月21日木曜日

windows7からwindows10に更新して困ったこと

つい、windows7からwindows10に更新してしまいました。

「windows7からwindows10に更新しますか?」ダイアログうざいと思いつつほっておいたら、無意識に、OKボタンを実行(マウスクリックしたのか、キーボードEnterキーを押したのか?)してしまいました。

更新後に、困ったことが明らかになったので、メモとして、まとめました。
尚、私のPCの起こった経験を述べていますので、必ずしも同じ現象が発生するかは保証できません


【windows10更新防止】
次のサイトに詳しく書いてあります。
https://121ware.com/qasearch/1007/app/servlet/qadoc?QID=017753
http://freesoft.tvbok.com/win10/upgrade_tips/cancell_upgrade_2016_04.html

個人的感想としては、
無料アップデート期限まで、出来る限りwindows7のままの方が無難と思います。
もしくは、windows10のPCを買った方がいいかもしれません。

尚、私みたいに無意識に更新しないように、うざいダイアログは表示しない方がいいと思います。


 【Windows10からWin7に戻す方法】
尚、次のサイトに記載している手順でWindows7に戻す事もできるようです
※戻して、また困ったら、どうしょうもないので私はやりませんが
http://simply-assi.com/windows10-3/


【windows10更新後、困ったこと】
(1) IE/Edge以外のブラウザでいろいろ困った現象が発生する
 ・Googleクロームが起動しない。しても、クラッシュしやすい
  また、起動自体もwin7のときと比べたら遅く感じます
 ・Firefoxがフリーズしやすい。もしくはレスポンスが遅い
  また、起動自体もwin7のときと比べたら遅く感じます

 ※ Google Chrome/Firefoxを長く使っていると、余計発生しやすいです。(再起動すると元に戻ります)

(2) FTPの設定ファイルが全部消えた。

(3) ドキュメントに置いておいたファイルがほとんど消えた
 →ピクチャ(画像ファイル)、動画など個人フォルダ以下のファイルが消えてしまいます

(4) ウイルスソフトをWin10用にかえる必要がある。

(5) アクセサリがわかりずらい(面倒くさくなった)

(6) gmailがフリーズしやすい

(7) リンクしている動画がみえない場合が多くなった気がする(フリーズする)

(8) Silverlightを使ったWebサイトがみれなくなった

以下のサイトみますと、同じように困った人が結構いるようです。
http://apicodes.hatenablog.com/entry/win10_freeze

また、判明したら、追記していきます。


2016年4月8日金曜日

【Webサイト】Webサイトを表示を早くする方法

 Webサイト表示(表示までの待ち時間)を早くすることに記述していある次のサイトで勉強になったので、覚えておくと良いことをまとめておきました。

【参考URL】
http://www.codeproject.com/Articles/26376/Speed-Up-Your-Website-By-Example

1、ファイル
(1) CSS/JavaScript/Imageファイルを小さくする
(2)  CSS/JavaScriptを一つのファイルに結合する
 (Imageも可能であれば一つにする)
(3) ブラウザキャッシュを使うようにする
  HTMLの<head>タグにExpiresを設定する
 Expires:meta要素で、キャッシュの有効期限を指定することができます。この要素はhead要素の中で使用します。

<meta http-equiv="expires" content="有効期限">
この要素で指定した日時、または秒数後に、ブラウザのキャッシュから文書の情報が消去されます。キャッシュを無効にするにはcontent="0"と指定します。
<meta http-equiv="CACHE-CONTROL" content="NO-CACHE">でキャッシュを使わない異もできます)

例:
<meta http-equiv="Expires" content="Fri, 31 Dec 2010 23:59:59 GMT">
   ・・・ この例では、グリニッジ標準時:2010年12月31日(金)午後11時59分59秒を指定しています。
<meta http-equiv="Expires" content="86400">
   ・・・ この例では、86400秒後(24時間後)を指定しています。

2、 HTML
(1) スペース、コメントなど文章量を削減する
(2) CSS/Scriptを外部ファイルに移行する
(3) tableタグは、divタグで作成する

3、 Image
(1) imageの使用は最小限にする
(2) widthとheightは必ず定義する
(3) gif(256色)ファイルを使用する
 ただし、たくさん色を使用したい場合はjpegファイルを使用する。

GIFとJPEGとの比較は下図をみると、どう違うかわかり易いです。

(5) アニメーションgifやflashは使用しない
(6) 同じイメージファイルは、サーバの一つのフォルダにする
 ⇒同じイメージを別フォルダに保存して、どちらのファイルも参照できるような状態にしない

2016年4月5日火曜日

【もう一度、英語をやり直そう】英会話日記(3/30) ~本八幡getgo英会話

来週から、先生が変わるそうです。
Josh先生に代わって、Chico(チコ)先生になるそうです。
Josh先生、一年間楽しい授業でした。 ありがとうございました。

【今週覚えたこと】
・なんだっけ
 What was it? (What was I gonna say?)
・アッ違うな
 Ah, nope (アーノップ)
 ※nope はno(違うよ)の口語体だそうです
・やっと
 finally
・胃腸炎
 stomach and intesting problem


【授業内容】
(1) haveを使った文章
 It has been 2 years since I met mother.
 I've been teaching for 4 years.
 I have been to Kyoto 3 times.
 Let's have lunch.
 I have to go.

(2) Truth & Lies(ホントとウソ)
・truth(n)
  tell the truth
・lie(v & n)
  lie = tell a lie




http://www.getgo.co.jp/
      ※上記画像クリックでHPにジャンプします(Josh先生プロフィール確認できます) 
 

2016年3月29日火曜日

【もう一度、英語をやり直そう】英会話日記(3/23) ~本八幡getgo英会話

最近体調が悪く、勉強不足なので、早く治して、英語も勉強しないと。


【今週覚えたこと】
funeral  = 葬式
I belong to life insurance for funeral.

【授業内容】Setting up a meeting on the phone. ( Setting up = Arrange)
1、下の例文のtelephone Englishを覚えて、telephone Englishを出来るように勉強する。

A: TA Insurance. TA speaking. Can I help you?
B: Good morning. This is Tarou from Tokyo Office. How are you, TA?
A: Fine thanks. What can I do for you, Tarou?
B: Well, I'd like to discuss The ABC Project. Are you free tomorrow?
A: Sorry, tomorrow's no good. How about the day after that?
B: Sounds good. What are you doing at 3pm.
A: 3pm works for me. Why don't we both go online at 3pm my time the day after tomorrow, and I'll call you then?
B: Great. Let's do that. Talk to you the day after tomorrow, then.

insurance:保険会社
3pm works for me: 3時はちょうどいい
Why don't you : ~しませんか
go online : skype meetingなどする
my time: 現地時間
Let's do that : そうしましょう

2、文法
質問:(何時・いつ・どこ)がいいですか
What time/When/Where suits you?
What time/When/Where works for you?
What time/When/Where is good for you?

答え:(例:2時)がいいです
2pm suits me.
2pm works for me.
2pm is good for me.

【宿題】
次の動画を見る(分からない点を次回のレッスンで質問する)

Learn English conversation successful telephone convesation(Full Lesson)
 https://www.youtube.com/watch?v=LLC_KNlXOyE

【その他】
telephone Englishで使う文をまとめているページがありましたので、
こちらも一読おすすめします。
http://www.learn-english-today.com/business-english/telephone.html

リスニングはこちらのサイトが簡単でよさげです。
http://www.talkenglish.com/lessonpractice.aspx?ALID=483

こちらの動画はいい感じです。
https://www.youtube.com/watch?v=NWawMZxDh9Y&ebc=ANyPxKpyRh57Wwf6WZusoPVqRgxnXU_tS1-JHtuSU8copcoUF2r6VAHATBkyR2DzWUchnA8B1yq8fBXxOktmg-qyphR8WW02AQ


 

2016年3月28日月曜日

【TypeScript/JavaScript】ColorPickerを実装する

 参考URLにあるColorPickerの実装を試してみました。

--------------------------------------------------------------

Microsoft Office 2010のような色選択コントロールを実装します。

【実装コード】
1、jQuery (v1.7 or greater), jQuery UI (v1.8 or greater)をダウンロードして、実装する
HTMLにコード追加

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js" type="text/javascript" charset="utf-8"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.1/jquery-ui.min.js" type="text/javascript" charset="utf-8"></script>
<script src="js/evol.colorpicker.min.js" type="text/javascript" charset="utf-8"></script>


2、使うCSSを記述HTMLにコード追加

 <link rel="stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.1/themes/ui-lightness/jquery-ui.css" />
<link href="css/evol.colorpicker.css" rel="stylesheet" type="text/css" />



3、inputタブに、colorpickerの実装
HTMLにコード追加
<div style="width:128px;">
   <input style="width:100px;" id="mycolor" class="colorPicker evo-cp0" />
   <div class="evo-colorind" style="background-color:#8db3e2"></div>
</div>

<script type="text/javascript">
   $(document).ready(function() {
       $("#mycolor").colorpicker();
   });
</script>



4、オプション設定
(1) 初期色設定
$("#mycolor").colorpicker({
    color: "#ffffff"
});

(2) ColorPickerのパレットデフォルト表示
$("#mycolor").colorpicker({
    defaultPalette: 'web'
});




(3) プレート内で色クリック及びマウスオーバー時の情報を下段に表示しない
$("#mycolor").colorpicker({
    displayIndicator: false
});


(4) ボタン非表示
$("#mycolor").colorpicker({
    hideButton: true
});


(5) パレットはボタンのみで表示
このオプションをしないと、inputのfocusを受けた時にパレット表示される。
デフォルトは、inputフォーカス時とボタンクリック時に表示されます。
$('#mycolor').colorpicker({showOn:'button'});

(6) パレット内表示文字変更
$("#mycolor").colorpicker({
   strings: "テーマの色,標準の色,Webスタイル,Theme Colors,パレット戻る,履歴,No history yet."
});

(7) パレットに透明色("#0000ffff")選択可能にする
$("#mycolor").colorpicker({
    transparentColor: true
});


5、イベント処理
(1) 色選択時
$("#mycolor").on("change.color", function(event, color){
    $("#title").attr("style", "background-color:" + color);
})


(2) パレット内のカラーボックスマウスオーバー時
$("#mycolor").on("mouseover.color", function(event, color){
    $('#title').attr("style", "background-color:" + color);
})


6、メソッド
(1) 色クリア
$("#mycolor").colorpicker("clear");

(2) グレーアウト(パレット表示できないようにする)
$('#mycolor').colorpicker("disable");
反対(パレット表示可能)の場合
$("#mycolor").colorpicker("enable");

(3) パレットの選択色設定・取得
var color = $("#mycolor").colorpicker("val");
$("#mycolor").colorpicker("val", "#d0d0d0");


(4) パレット表示(ボタンやinputから表示以外の方法)
$("#mycolor").colorpicker("showPalette");

(5) パレット非表示(ボタンやinputから表示以外の方法)
$("#mycolor").colorpicker("hidePalette");


7、カラーパレットテーマ(デザイン色)変更
 jQuery UI widgetと同じテーマで変更できます
独自のテーマ作成もきます
http://jqueryui.com/themeroller/#!themeGallery=undefined



<link id="jquiCSS" rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.1/themes/ui-lightness/jquery-ui.css" type="text/css" media="all">
の"ui-lightness"を変更します。

またはプログラム内で行う場合は、以下のような感じで行います。
        var theme = "ui-darkness";
        $('#jquiCSS').attr('href','http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.1/themes/'+ theme +'/jquery-ui.css');
        $('.css').removeClass('sel');
        $(this).addClass('sel');



8、実装例

    <div class="demoPanel" style="width:130px">
        <input id="cpButton" value="#92cddc" />
    </div>
    <script type="text/javascript">
        $('#cpButton').colorpicker({ showOn: 'button' });

        $("#cpButton").colorpicker({
            strings: "テーマの色,標準の色,Webスタイル,Theme Colors,パレット戻る,履歴,No history yet."
        });
        $("#cpButton").colorpicker({
            displayIndicator: false
        });
        $("#cpButton").colorpicker({
            color: "#ffffff"
        });
        var theme = "ui-darkness";
        $('#jquiCSS').attr('href', 'http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.1/themes/' + theme + '/jquery-ui.css');
        $('.css').removeClass('sel');
        $(this).addClass('sel');
    </script>


9、実装例をTypeScriptで実装
JavaScriptファイル(test.js)を作成して、8で記載したコードを追加する
function SetColorPicker() {
    $('#cpButton').colorpicker({ showOn: 'button' });
    $("#cpButton").colorpicker({
        strings: "テーマの色,標準の色,Webスタイル,Theme Colors,パレット戻る,履歴,No history yet."
    });
    $("#cpButton").colorpicker({
        displayIndicator: false
    });
    $("#cpButton").colorpicker({
        color: "#ffffff"
    });
    var theme = "ui-darkness";
    $('#jquiCSS').attr('href', 'http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.1/themes/' + theme + '/jquery-ui.css');
    $('.css').removeClass('sel');
    $(this).addClass('sel');
}


TypeScriptファイル(app.ts)で以下のコードを追加する 。
(declare宣言(アンビエント)で、JavaScriptで定義した関数を宣言する)
 declare function SetColorPicker();
$(document.body).ready(function () {
    SetColorPicker();

}


【参考URL】
http://www.codeproject.com/Articles/452401/ColorPicker-a-jQuery-UI-Widget

【Javascript】使えそうで、覚えておくと良い関数など

指定したURLへ移動
location.hrefプロパティを手動で設定し、指定したURLにジャンプさせることができます。 
window.location.href = "http://www.google.co.jp/";


ページ内の指定したアンカー名へ移動
移動先となる場所には、<a name="アンカー名"></a>のように、a要素のname属性にアンカー名を指定します。
例えば、
ページの先頭に<a name="pagetop"></a>と記述しておくと、ページの要所要所で
<a href="#" onClick="location.hash='pagetop'; return false;">先頭へ</a>
と記述したリンクをクリックすれば、ページの先頭へジャンプさせることができます。

新しいドキュメントを読み込む
 assignメソッドは、新しいドキュメントを読み込み、現在のlocationを変更します。 第1引数URLには、新しいドキュメントのURLを指定します。
location.assign("http://www.google.co.jp/"); 

ページの履歴を残さずにジャンプ
replaceメソッドは、現在のURLを指定したURLに置換します。
このreplaceメソッドで、現在のURLを任意のURLに置換すれば、ページの履歴を残さずに任意のページへ移動させることも可能です。 ブラウザの[戻るボタン]をクリックしても、前に閲覧していたページに戻ることはできません。
<input type="button" value="ジャンプ" onclick="location.replace('http://www.google.co.jp/');" />


ノード内のHTML要素の取得・設定
エレメント.innerHTML = HTML文
対象ノード内のHTML文を取得・設定します。
 HTMLタグを含めずにプレーンテキストのみ取得・設定したい場合は、innerText/textContentを使用します。
 document.getElementById("message").innerHTML="<p>"+str+"、"+username+"さん<\/p>";



【JavaScript文法】
throw文
例外エラーを発生させ、キーワードをcatch文に渡す
 try ... catch...finally文で処理できるエラー条件を生成します。 式には任意の式を指定します。
        try{
            try{
                if(x == 0) throw "x は 0 と等しい";
                else throw "x は 0 と等しくない";
            }
            catch(e){
                if(e=="x は 0 と等しい") return(e); /* エラーメッセージを返す */
                else throw e;
            }
        }
        catch(e){
            return(e); /* エラーメッセージを返す */
        }

 try...catch...finally文
 エラーをキャッチしてエラー処理を実装する
 try {
  [ try文 ]
} catch ( 変数名 ) {
  [ catch文 ]
} finally {
  [ finally文 ]
}

【参考URL】





http://phpjavascriptroom.com/?t=js