カスタムエラーページの表示 [ASP.NET]
ASP.NETアプリケーションで、サーバーエラーが発生した際に、
IISデフォルトのエラー表示ではなく、エラーページを独自のエラーページに飛ばす為の
web.configの設定。
<customErrors defaultRedirect="error.html" mode="On" />
</system.web>
※独自にerror.htmlというページを用意しておく
スライド表示用のJavaScriptライブラリLightWindow [JavaScript]
スライド表示用のJavaScriptライブラリなのですが、PDFや動画、SWFまでも簡単にスライド表示できるみたいです。
まだ実際に使ってはいないのですが、色々使えそうです。
参考:
パワフルで動作が軽快なスライド表示JavaScript (LightWindow) - youmos
Lightwindowスクリプト実験
rmblにLightWindow導入
動的にページタイトルを変える [ASP.NET]
ASP.NET2.0よりPageのHeaderプロパティを使って、titleタグ内を動的に変更させる事ができる。
protected void Button1_Click(object sender, EventArgs e)
{
//ボタンが押されたタイミングでタイトルを変える
Page.Header.Title = "ボタンが押されました-" + DateTime.Now.ToString();
}
またHeaderプロパティを使わずに、タイトルを動的に変更する方法
(略)
<html xmlns="http:⁄⁄www.w3.org/1999/xhtml" >
<head runat="server">
<title><%=strTitle %></title>
</head>
(略)
public partial class changetitle : System.Web.UI.Page
{
protected string strTitle = "";
protected void Page_Load(object sender, EventArgs e)
{
strTitle = "ページロード -" + DateTime.Now.ToString();
}
protected void Button1_Click(object sender, EventArgs e)
{
strTitle = "ボタンが押されました -" + DateTime.Now.ToString();
}
}
外部画像ファイルを読み込む時にキャッシュから読み込ませない [ActionScript]
Flashで外部からjpgファイル等を読み込んで表示させる際、
ブラウザがファイルをキャッシュしてしまい、キャッシュからファイルを読み込もうとします。
それを防ぐために、読み込むファイルに変動するクエリーストリングを追加してあげれば、
キャッシュから読み込まずに、その都度ファイルを読み込んできます。
//loadMovieで、乱数を使う場合。
var img_mc:MovieClip = this.createEmptyMovieClip("image_mc", 1);
var rnd:Number = Math.floor(Math.random()*10000);
img_mc.loadMovie("http:⁄⁄hogehoge.com/img.jpg?q=" + rnd);
//MovieClipLoaderを使って、タイムスタンプを使う場合。
var img2_mc:MovieClip = this.createEmptyMovieClip("image2_mc", 2);
var obj_mcl = new MovieClipLoader();
var dt = new Date();
obj_mcl.loadClip("http:⁄⁄hogehoge.com/img.jpg?q=" + dt.getTime(),img2_mc);
※ブラウザの設定などによっては、ブラウザにキャッシュが無尽蔵に溜まるので注意
※ファイル名指定をhttpから始まるURLでは無く相対パスで指定した場合、Flashでプレビューを行うとエラーが起こる。
baseパラメーターでファイルパスを指定する [Flash]
Flashでムービー内から外部ファイルを読み込む時には、
SWFを表示しているHTMLからのパスを指定しなければならないのですが、
baseパラメータでパスを指定すれば、指定したパスの1つ上の階層がカレントディレクトリになります。
また、baseパラメーターで"."を指定すれば、
SWF内で指定されている全てのパスが、そのムービーファイルからの相対パスになります。
<param name="base" value="." />
embedタグで指定する場合
<embed src="path/path2/hoge.swf" base="." .../>
SWFObjectの場合.
<script type="text/javascript">
var so = new SWFObject("hoge.swf", "hoge", "400", "300", "8", "#ffffff");
so.addParam("base", ".");
</script>
参考:
base パラメータ - yoshiweb.NET
Adobe [228646]パラメータオプション
JavaScriptで文字列をエンコードする [JavaScript]
JavaScriptで文字列をエンコードする場合は、escapeやencodeURI、encodeURIComponentがあるが、
こちらを使うと、簡単に文字列をShift_JISやECUーJP、UTF-7、UTF-8にエンコード、デコードしてくれる。
ブラウザ依存も殆どないので、(IE5.0以上、Netscape7、Operaで動作確認とのこと、Firefox2.0で確認済み)非常に使いやすくて便利なライブラリです。
<head></head>
<script type="text/javascript" src="ecl.js"></script>
<script type="text/javascript">
function funcEncSJIS(){
var strText = document.enc.encText.value;
document.enc.decText.value = EscapeSJIS(strText);
}
function funcDecSJIS(){
var strText = document.enc.decText.value;
document.enc.encText.value = UnescapeSJIS(strText);
}
</script>
<body>
<form name="enc">
エンコード<input type="text" name="encText"><input type="button" value="エンコード" onClick="funcEncSJIS()"><br/>
デコード<input type="text" name="decText"><input type="button" value="デコード" onClick="funcDecSJIS()"><br/>
</form>
</body>
</html>
フレームを指定してRedirectをする [ASP.NET]
関連記事:フレームにRedirectを擬似的に行う
前回のJavaScriptを使った擬似的なRedirectに近いのですが、
今回はボタンコントロール(等)にtargetを指定して、指定したフレームをページ遷移させます。
protected void Page_Load(object sender, EventArgs e)
{
//frameAというフレームを指定する
Button1.Attributes["OnClick"] = "target='frameA';";
//親フレームを指定する
Button2.Attributes["OnClick"] = "target='_top';";
}
protected void Button1_Click(object sender, EventArgs e)
{
//frameAに対して、frameA.aspxというページに移動させる
Response.Redirect("frameA.aspx");
Response.End();
}
protected void Button2_Click(object sender, EventArgs e)
{
//親フレームをtop.aspxというページに移動させる
Response.Redirect("top.aspx");
Response.End();
}
フレームにRedirectを擬似的に行う [ASP.NET]
ASP.NETのResponse.Redirect,Server.Transferでは
フレームを指定してのページ移動はできない為、JavaScriptを使ってページ遷移をする。
以下はframeAという名前のついたフレームに対して、ページ遷移を実行します。
string strScriptName = "RedirectScript";
string strRedirectUrl= "redirect.aspx";
Type type = this.GetType();
ClientScriptManager cs = Page.ClientScript;
if (!cs.IsStartupScriptRegistered(type,strScriptName))
{
string strScriptText = "parent.frameA.location.href='" + strRedirectUrl + "';";
cs.RegisterStartupScript(type,strScriptName, strScriptText, true);
}
ファイルの作成、更新、アクセス日時の取得&設定 [C#]
ファイルの作成日時、更新日時、アクセス日時の取得と設定をする
System.IO.Fileクラスでそれぞれ取得、設定できる。
ファイルではなくディレクトリの場合はSystem.IO.FileクラスをSystem.IO.Direcroryに変える。
string strFile = Server.MapPath("aaa.txt");
DateTime dtFileCreateTime;
DateTime dtFileUpdateTime;
DateTime dtFileAccessTime;
//作成日時の取得
dtFileCreateTime = System.IO.File.GetCreationTime(strFile);
//更新日時の取得
dtFileUpdateTime = System.IO.File.GetLastWriteTime(strFile);
//アクセス日時の取得
dtFileAccessTime = System.IO.File.GetLastAccessTime(strFile);
//全て一日前に戻す
//作成日時の設定
System.IO.File.SetCreationTime(strFile, dtFileCreateTime.AddDays(-1));
//更新日時の設定
System.IO.File.SetLastWriteTime(strFile, dtFileCreateTime.AddDays(-1));
//アクセス日時の設定
System.IO.File.SetLastAccessTime(strFile, dtFileCreateTime.AddDays(-1));