(関連記事...最近のVerに対応した差分) : BugTrack/585
注:$fixed_heading_anchor = 1; でないと使えません。
para_edit対応版のキャンセルボタンも作ってみました。上のpara_edit.diffをあてて、BugTrack/727のキャンセルボタンを作るときに、edit.inc.phpでキャンセル用の関数を以下のように書き換えればできます。 -- kyon 2004-10-11 23:18:18
// キャンセル function plugin_edit_cancel() { global $script,$post; $location = "Location: $script?".rawurlencode($post['page']); $location .= "#" . $post['id']; header($location); exit; }
わたしの使っているサーバでは、#のあとにアンカーがないとエラーになる(自宅でのローカルテストは大丈夫でした)ので、きちんと場合わけして全体編集のときは#を付けない(というか、部分編集のときだけアンカーをつける)ように改造しました。 -- kyon 2004-10-12 18:20:35
// キャンセル function plugin_edit_cancel() { global $script,$post; $location = "Location: $script?".rawurlencode($post['page']); if ($post['id'] != "") { $location .= "#" . $post['id']; } header($location); exit; }
既存のページを編集する場合は問題ないのですが、新規ページ作成の編集状態の場合、メニューの「リロード」及び上記「キャンセル」を選択しても、移動先がないので画面が変わりません。 新規ページ作成の場合、呼び出したページ(referer)に戻るようにできないかなあ。新規ページ作成なのか既存のページの編集なのか、どうやって判断すればいいですか?
PukiWiki.orgの訪問者の中には、新規ページ作成で編集画面から脱出するため�けないってこと?-- 名無しの権兵衛? 2003-11-15 (土) 00:45:22
<div style="float:right;width:100px;text-align:right"> <a href="$script?$r_page#$s_id"><img src="./image/cancel.png" width="87" height="27" alt="$_btn_cancel" title="$_btn_cancel" /></a> </div>
inputタグやbuttonタグを使わずに、ボタンを画像にしてimgタグで貼り付ける。当然ながらクリックしたときにボタンはへこまないけど、実用上問題はありません。cancel.png
それから $_btn_cancel の global 宣言が無いから ja.lng で設定した値が有効ではありません。
global $_btn_cancel;
上記のソースで
<div style="float:right">
の部分は、実装時は
<div style="float:right;width:120px;text-align:right">
というようにするのが正しい書き方です(CSS2の仕様書では、float使用時はwidthを指定しなければいけないとなっています)*1。
$_btn_cancel = 'キャンセル';
で指定した文字幅を考慮してwidthの値を設定する必要があるので、実装時にwidthとtext-alignを付け加えてください(実装時にはclass指定して、default.ja.cssに書き出すのがいいでしょう)。-- reimy 2003-11-15 (土) 02:41:59