の形で呼ぶ。
//
// anchor_idはフレームを使う場合最低限各フレームごとに設定。お互い他のフレームを書換えたときにへんな干渉をさけるため。
// その他ページの種別毎などで変えてもよいが、あまり小分けにするとcookieが増える。
// 同じanchor_idで保存されるcookieは1セットのみ。でも単独ページ表示のサイトなら概ねこれで充分。
anchor_id = "anc_main";
noanchor = false; // bodyにanchorをしかけたときなど場合によって一時無効にするためのフラグ。
// アンカーの記憶。
function anchor_save(object_id, page_id) {
if(noanchor) { anchor_erase(); return; }
get_scroll();
setcookie(anchor_id+"_pid", page_id, 0);
setcookie(anchor_id+"_st", scroll_top, 0);
setcookie(anchor_id+"_sl", scroll_left, 0);
if(object_id) {
object_top = scroll_top + get_object_top(object_id);
object_left = scroll_left + get_object_left(object_id);
setcookie(anchor_id+"_oid", object_id, 0);
setcookie(anchor_id+"_ot", object_top, 0);
setcookie(anchor_id+"_ol", object_left, 0);
} else {
setcookie(anchor_id+"_oid", "", -1);
setcookie(anchor_id+"_ot", "", -1);
setcookie(anchor_id+"_ol", "", -1);
}
}
// アンカーの適用。
function anchor_apply(page_id) {
if((saved_page_id = getcookie(anchor_id+"_pid")) && page_id != saved_page_id) { return; }
get_scroll();
if((anchor_st = getcookie(anchor_id+"_st")) != "" && (anchor_sl = getcookie(anchor_id+"_sl")) != "") {
anchor_st = parseInt(anchor_st);
anchor_sl = parseInt(anchor_sl);
} else {
anchor_st = scroll_top;
anchor_sl = scroll_left;
}
if((object_id = getcookie(anchor_id+"_oid"))
&& (anchor_ot = getcookie(anchor_id+"_ot")) != ""
&& (anchor_ol = getcookie(anchor_id+"_ol")) != "") {
offset_top = (scroll_top + get_object_top(object_id)) - parseInt(anchor_ot);
offset_left = (scroll_left + get_object_left(object_id)) - parseInt(anchor_ol);
} else {
offset_top = offset_left = 0;
}
window.scrollTo(anchor_sl + offset_left, anchor_st + offset_top);
}
// アンカー消去。あえてとっておく必要がなければanchor_apply()後すぐ消去が望ましい。
function anchor_erase() {
setcookie(anchor_id+"_pid", "", -1);
setcookie(anchor_id+"_st", "", -1);
setcookie(anchor_id+"_sl", "", -1);
setcookie(anchor_id+"_oid", "", -1);
setcookie(anchor_id+"_ot", "", -1);
setcookie(anchor_id+"_ol", "", -1);
}
//-->
ふいちゃんの中国日記
生活編/出来事
|
|
住んでいるアパートの近くに「安盛超市」があってここには台湾系の「好又多」が入っている。このスーパーマーケット「好又多」は中国各地に出店していると言われている。10月中旬、真冬なみの寒気が大連を襲ったあとこの「好又多」で防寒衣を売り出したのでさっそく1着買った。価格は99元、なかなか暖かくてよい。「好又多」では下着以外の衣類には盗難防止用のタグが付けられている。 防寒衣を買ったときレジの担当者がこのタグをはずしたうえ、レジに備え付けの検査機でも音のでないことを確認してからわたしに品物を渡してくれた。出口を通るときも盗難防止機は何の音も出なかった。ところがこの防寒衣を着て「好又多」へ買い物に行き、出口を出ようとしたら盗難防止機の音が鳴ったのだ。係員がすぐわたしのところへ来て検査を始めた。わたしにとっては「莫名其妙:なにがなんだかさっぱりわからない」であったが、係員からみるとわたしは「万引き」としか映っていないのであろう。防寒衣を脱いでもう一度検査機を通れというのでそうしたら今度は音は鳴らなかった。それで防寒衣が怪しいということで係員が防寒衣を手にもって検査機の間を通すと音が鳴ったり鳴らなかったりで、係員も首をかしげている。たくさんの客がわたしをじろじろ眺めていくがわたしは平然としていた。そのころにはわたしが外国人だということに係員は気づいていたようだ。面倒に巻き込まれてはかなわないという算段もあったのであろうか、結局、行っていいということになった。 次の週末、またわたしは同じ防寒衣を着て「好又多」へ買出しに行った。出口でまた音が鳴ってひっかかってしまった。前と同じように男の係員がさっと来てわたしを検査し始めた。またもや「万引き犯」扱いである。今度も防寒衣を脱いで検査機を通り直せというので言われたとおりにしたら音はでなかった。先回と同じような手順で係員が防寒衣を手に持って検査機を通して確認している。結果は同じで、音が出たり出なかったり。結局、また行っていいということになった。出口のすぐ左に机を置いて何かを売っていた小姐が先週の出来事を覚えていて先週も同じ問題がでていたということを係員に言っていた。 わたしは係員に、責任者を呼んでわたしに謝罪せよと要求した。係員はなかなか応じなかったがわたしも引き下がらなかった。ついにわたしの要求を聞き入れ、責任者と称する女がやってきた。言うことには「韓国製の衣類はよくこういうことがある」と弁明している。こちらは買った防寒衣が韓国製かどうかは知らなかったが、いずれにしろこの防寒衣は「好又多」が売ったものだから、そういう懸念があるのだったら「好又多」で対策すべきで、客側の問題ではないとさらにクレームをつけ加えた。「調べさせてくれ」というので防寒衣を脱ぎ「責任者」へ渡した。「責任者」はほかのところは全く調べず、いかにも要領よさそうに襟もとにある頭へ被る部分をしまってあるファスナーをはずして7mm×30mmくらいのメーカーの金属製の商標を取り出した。その動作をみていると「責任者」はどうも原因を知っていたとしか思えない。 その商標をはずしていいかと聞くので「いい」と言ったら「責任者」は手でさっとはがして捨ててしまった。そしてわたしに「対不起」と謝ったのでわたしの要求は通ったことになり収めることにしたが非常に不愉快な思いをさせられた事件であった。さすがに「好又多」側もこれはまずいと思ったのか、思いもしなかったことだがわたしが防寒衣を着ようとしたら「責任者」が後ろに回ってわたしに着せてくれた。「責任者」が「またいらしてください」と言うのを耳にいれながらわたしは「好又多」を後にした。 なぜ防寒衣を買ったとき音が鳴らなくて着たときに音が鳴ったのか、こういうことではないかと推測している。係員が防寒衣だけを検査するとき毎回防寒衣を肩の高さくらいのところにあるセンサーらしき物の前を通過させていた。おそらくセンサーは高さ的に例えば上・中・下と2〜3箇所にとりつけられている可能性がある。買い物籠にいれて出口を通るときこの防寒衣の金属製商標はちょうどセンサーとセンサーの間にあり、しかも平たい商標がセサーに対して厚み方向を向いていたのではないかと思う。商標の向きに関係なく音がでるのであれば係員が防寒衣だけ検査するときに音がでたり出なかったりではなく毎回出ていいはず。着たときは商標がセンサーのま近にあり、しかも平らな面がセンサーに向いていたので検知できるほどに反応したのではないだろうか。
|
|
|