Galaxy S IIでYahoo!メールが読めなくなった

なんか、今日、メールがやたらに来ない!と、フシギになった見習です。

見習の使用機種は、Galaxy S II。最初から入っているSocial Hubを使ってメールやFaceBook、Twitterをチェックしてます。ブラウザでネットは見れるし、Social HubでFaceBookもTwitterも見れてる。なのに、なぜかYahoo!メールのみ、昨日が最終更新日になったまま・・・。よく見ると、昨日送信したはずのメールが、送信トレイに入ってるし!

Yahoo!メールのみがヘンなようです。

Yahoo!のIDのチェック

さっそくチェックしたのは、Yahoo!IDがダメになってるかとか、Yahoo!の不具合。パソコンからYahoo!にアクセスして、スマホで見ているYahoo!メールのIDでログインしてメールボックスを見ました。きちっと、メールたまってる。っていうか、未返信のメールたまってる・・・。まずい。

Yahoo!のフリーメールは、4ヶ月とかログインがなかったり、送受信がないと、メールが使えなくなってしまうようです。IDがなくなってしまうわけではないし、利用再開もできるので、その辺はOKですが、まぁ、何があるかはわからないです。見習では。メーラーでの送受信があればOKのようなので、スマホでチェックして一通でもメールの送受信があればいいんだと思いますが。

Docomoの通信をチェック

次に、Docomoの通信に何か異常が出ていないかチェックです。といっても、電話は掛けられるし、ブラウザでネットは見れてるし、Social Hubだって、Yahoo!メール以外は問題ないから、ほぼOKです。一応、Docomoに聞いてみましたが、「とくに、通信に問題出てないです」とのことでした。

ということで、こういうとき、どうしたらいいのか、Docomoのお兄さんに聞きました。

まずはGalaxy S IIの再起動

とりあえず、Galaxy S IIの再起動です。電源ボタンを長押しして、電源を切ってから、再びスイッチONします。

試してみました。ありゃ、でけた。

おもむろに再起動後、Social Hubを起動してYahoo!メールを開き、更新させたら、問題なく、たまってたメールを読んできました。送信トレイを開いて、「未送信メールを送信」したら、送信できてなかったメールをするする送信してます。いったい、ぜんたい、なんだったんだと思いつつ、ほっとした見習です。

とはいうものの、Docomoのお兄さん、これでもダメだったときのこと、教えてくれたので、今度のためにビボー録しておきます。

Social HubでYahoo!メールのアカウント再登録

Galaxy S IIの再起動でもダメなら、一度、Social HubのYahoo!メールのアカウントを削除して、再登録しなおします。

それでもダメなら、DOCOMOのお店?

それでもダメだと、ちょっと面倒です。Social HubはGalaxy S IIの最初から入っているアプリで、自分でアンドロイドマーケットでダウンロードしてきたアプリではないです。だから、いったん削除して、再インストールということができない!ががーん。です。データをバックアップしてから、Galaxy S II自体を初期化しなおさなきゃならないんですって。ぎえー。

「バックアップの設定とか、しなきゃいけないから、ドコモのお店に行ってもらうといいです」って、Docomoのお兄さん説明してくれましたが、それって結構メンドーですぅ。

最初から入っているアプリだったら、ウィルスの心配とか、不安定になる心配とかあんまりないかなと思って、使っていたのですが、こういうときにはおおごとになっちゃうんですねぇー。たしかにWindowsでも、アクセサリに入ってたりして、最初から使えるソフトって、問題出たときに、ちょっとアンインストールして、再インストールすればいいってわけじゃなかったりして、逆に面倒かもって思ったことがあったけど、スマホでもおんなじとは・・・。とほほ。

なんでも、ラクだからOKとか、最初から入ってるから、問題少ないかもって考え、ちょっと改めなきゃいけないのかもと、真摯なキモチになった見習です。

FAQを作ってみたい J Queryで挑戦

クリックすると、びろびろびろっと回答が出るFAQをJ Queryで作ってみました。

h2要素に質問文を書き、その次に回答用のDivを作りました。Divの中にはP要素でもリストでも何でも好きなものが入れられる予定です。で、方法としては、はじめはh2のみ表示してDivはすべて非表示。質問のh2をクリックすると、その次のDivのみ表示します。それから、別の質問をクリックすると、その前にクリックしたところの回答文は非表示になります。

で、クリックできることを知らせるために、h2にマウスが乗っかるとポインターの形になるようにしてあります。

HTML

<div id="faq">
<h1>FAQ</h1>
<p>ご質問はこちらをご覧ください。</p>
<h2>1.なぜ、見習なんですか。</h2>
<div><p>まだ若いからです。ぶひっ</p></div>
<h2>2.見習が得意なことってありますか。</h2>
<div><p>あ、ちょっと待っていただけますか。あれー、いったいなんだろう。あれあれあれ・・・。</p> <p>あの~、えっと、用件ってなんでしたっけ?</p></div>
<h2>3.見習って、どう読むんですか。</h2>
<div><p>けんしゅうって読みます。「一見の価値あり」の「けん」に「学習」の「しゅう」です。</p> <p>ですよね?あれ、字引がないかな?</p></div>
<h2>4.見習とかけだしって、どう違うんですか。</h2>
<div><p>えへへ。</p></div>
<h2>5.いつまで見習やってるつもりですか。</h2>
<div><p>がびょーん。</p></div></div>

CSS

*{
margin:0;
padding:0;
}
#faq {
width:80%;
margin:auto;
}
h1{
background-color:#09f;
color:#fff;
padding:5px;
margin-bottom:5px;
}
#faq div.closed{
display:none;
}
h2{
font-size:15px;
padding:5px;
border-bottom:#09f 1px dashed;
}
h2:hover{
cursor:pointer;
}
#faq div {
padding:10px 20px 0;
font-size:12px;
}

Java Script(J Query)

// JavaScript Document
$(function(){
var class_closed='closed';// クラスclosedを使えるよう定義
$('#faq').each(function(){
var faq_div=$(this);
var allH2=faq_div.find('h2');
var allDiv=faq_div.find('div');
function closeAll(){
allDiv.addClass(class_closed);
}
function openit(div){
div.removeClass(class_closed);
}
closeAll();//すべてを閉じる
allH2.click(function(){
var h2=$(this);
var div=h2.next();
closeAll();
openit(div);
});//クリックですべてを閉じて、クリックした次を開く
});//faq.each function終わり
})//1番目function終わり

▼サンプルはこちら

どうでしょう。それっぽいですよね?でも、2つ目以降の質問文をクリックしたとき、前の問題を非表示にしたほうがいいのか、表示したほうがいいのか、分からないです。って場合によるのでしょうか・・・。ということで、非表示にしないように、最後ですべてのDIVを閉じる動作をやめてみました。


// JavaScript Document
$(function(){
var class_closed='closed';// クラスclosedを使えるよう定義
$('#faq').each(function(){
var faq_div=$(this);
var allH2=faq_div.find('h2');
var allDiv=faq_div.find('div');
function closeAll(){
allDiv.addClass(class_closed);
}
function openit(div){
div.removeClass(class_closed);
}
closeAll();//すべてを閉じる
allH2.click(function(){
var h2=$(this);
var div=h2.next();
//closeAll();ここをコメントアウトすれば、次の質問文をクリックしても、前の回答文は非表示にならない
openit(div);
});//クリックした次を開く
});//faq.each function終わり
})//1番目function終わり

いひひ、なんとなく、それっぽくなってきて、うれしい見習です。うふふ。

J Queryを使って共通部分を読み込む テンプレートの代わり

htmlを書いていて、ヘッダーとか、フッターとか、グローバルナビとか、多ページ構成のサイトの共通部分をまとめて修正したいとき、どうしよう・・・。Dream Weaverのテンプレートの機能、ライブラリの機能、一括置換・・・。PHPで読み込む・・・。

そんな解決策のひとつがJ Queryを使うことみたいです。たとえば、ヘッダー、フッター、ナビゲーションの3ブロックをそれぞれ各ページの共通部分として管理して、J Queryで読み込ませられます。

それぞれの部分を、header.html、footer.html、navi.htmlという別ファイルにして、そこにフツーにHTMLで書きます。で、読み込む元のファイル、たとえばindex.html内では、それぞれの部品をおきたい場所に空divをおき、適当なIDを振ります。そして外部化したJSファイルにJ Queryを書きます。

このとき、JSファイルで、読み込むヘッダーなどの書いてあるHTMLファイルのパスを書きますが、Java Scriptは読み込む先のHTMLファイルで実行されるので、パスの階層がずれないように注意しなればいけないです。いろんな階層のHTMLで読み込まれることを考えると、絶対URLか絶対パス(仮想パス)で書くほうがよさそう。

HTML

<div id="wrap">
<div id="header"></div>
<div id="main"><p>ここにメインコンテンツを書きます</p></div>
<div id="navi"></div>
<div id="footer"></div>
</div>

header.html

<p>ここにヘッダーを書きます</p>

navi.html

<ul>
<li>navi1</li>
<li>navi2</li>
<li>navi3</li>
<li>navi4</li>
</ul>

footer.html

<p>ここにフッターを書きます</p>

Java Script (J Query)

// JavaScript Document
$(function(){
var header=$("#header");
var navi=$("#navi");
var footer=$("#footer");
header.load("/csstest/jstest/templates/header.html");
navi.load("/csstest/jstest/templates/navi.html");
footer.load("/csstest/jstest/templates/footer.html");
})

▼サンプルはこちら

なんとかでけた?どきどき。