ホームページ上で、いくつもの画像をゆらゆらと降らせたり(雪や花びらなど)、ゆらゆらと昇らせたり(風船など)する JavaScript の
スクリプトについては、結構使われているみたいですね。

実は、このスクリプトを解読したいと思い立ってJavascript の独習を始めて、苦労しながらようやくそれが片付いたので、
スクリプトのクレジットにある <!-- Original: Altan (snow@altan.hr) --> にメールしてみようかと思ってるんですが、
以下についてご存知の方がおられましたら、よろしくお願いいたします。

http://www.altan.hr/snow/ で見ましたら、
      JS Snow v0.1
      finished on 11-10-1999 23:04 in Zagreb, Croatia.
      Copyright 1999 Altan d.o.o.
のように書かれてますが、

・ Altan d.o.o. というのは人名ですか? それとも会社名ですか?

・ E-mail アドレスにある「 @altan.hr 」というのは、どのように読み取ればいいんですか?
  hr が仮に国名だとすると、ドメイン名は普通は3つの項目で組み合わせられるのかと思っているんですが。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

d.o.o. はなんだか知りませんが、ドメイン名に3つの項目なんてルールは無いですよ。



hr というトップドメインはクロアチアのものみたいですね。ページにも先頭に in English と有るし、英語のページを作られているようですから英語で普通にメールを書けば良いんじゃないでしょうか?

この回答への補足

コメントありがとうございます。

Internet Explorer の「検索」を使って 「 http://www.altan.hr/snow 」 でウェブ検索してみましたら 52 件ヒットして、
オリジナルのスクリプトを改造したりして使っているところが結構あるみたいでしたので、
もしかして国内でも紹介されたり話題になったりしたことがあったりして、その「 Altan d.o.o. 」についてご存知の方も
いるかも知れないと思って、試しにおたずねしてみたという訳なんです。

それと、因みにおたずねしたドメイン名の関係ですが、
「3つの項目なんてルールは無いですよ。」とのお話ですが、
大抵の本、それと大抵の解説サイト(いろいろありますが、たとえばhttp://www.kcua.ac.jp/~fujiwara/kcua/inet.html#D …)では、
「固有の名前、組織等の種別コード、国別コード(米国を除く)」で構成されているとの説明になっていると思いますが、
それらとの関係では、どのように理解しておけばいいんでしょうか?

国によっては、必ずしも全部が一緒じゃないということでしょうか?

補足日時:2001/05/06 13:59
    • good
    • 0

ドメインについて説明しているサイトというのは、日本語のサイトですよね?日本のJPドメインの場合セカンドレベルのドメイン名に意味をもたせているので、必然的に3項目となります。


3項目以下のドメインなんか結構有りますよ。例えばトンガ王国のトップドメインは .to なので go.to なんてのはwhoisでヒットします。このドメインなら name@go.to というメールアドレスでしょう。

インターネットに関する情報や資料について、日本語だけで探していたらだめですよ。基本はRFCという文章ですしね。
    • good
    • 0
この回答へのお礼

ありがとうございました。良く分りました。

私が「補足」挙げたサイトなんかは、・・ .ac.jp になっていて、一応 ac だから、グローバルに捉えた上で解説してあるんだろうと思ってしまったんですが、
要するに原点は RFC 文書ということなんですね。

お礼日時:2001/05/06 15:34

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

Q*.jsをHTMLで読み込んでHTMLに書かれたスクリプトを外部スクリプトで処理したいんですが。。

JAVAスクリプトを外部ファイルに下記の様に書き出して外部ファイルをHTMLファイルに読み込んで、
読み込んだHTMLに書かれたスクリプトを外部ファイルで処理したいんですが
上手くいきません。読み込みの方法とか記述方法について教えてもらいたいのですが、よろしくお願いします。
[load.js]
var win1;
function openwin(){
win1 =window.top.frames[3];
}

function loading_mes(message){
if(win1.closed==true){
openwin();
}
win1.focus();
win1.document.open("text/html");
win1.document.write("<HTML><BODY bgcolor=\"#000000\" text=\"#ffffff\">");
win1.document.write("<p style='margin-top: -10'>");
win1.document.write("<H3>" + message + "</H3>");
win1.document.write("</p>");
win1.document.write("</BODY></HTML>");
win1.document.close();
}
openwin();
loading_mes("load stert");

[HTMLでの処理したい事]
<BODY onLoad="setTimeout('win1.close()',1000)"></BODY>
<script type="text/javascript">
loading_mes("■■■■■■");
</script>
<script type="text/javascript">
loading_mes("Loading Done");
</script>
です。よろしくお願いします。どん詰まり状態で手も足も出ません(^^;

JAVAスクリプトを外部ファイルに下記の様に書き出して外部ファイルをHTMLファイルに読み込んで、
読み込んだHTMLに書かれたスクリプトを外部ファイルで処理したいんですが
上手くいきません。読み込みの方法とか記述方法について教えてもらいたいのですが、よろしくお願いします。
[load.js]
var win1;
function openwin(){
win1 =window.top.frames[3];
}

function loading_mes(message){
if(win1.closed==true){
openwin();
}
win1.focus();
win1.document.open("text/html");
win1.document.wr...続きを読む

Aベストアンサー

<SCRIPT SRC=xxx.js></SCRIPT>で、外部ファイルを読みこめます。

参考URL:http://tohoho.wakusei.ne.jp/html/script.htm

Qこのスクリプトにアレンジを加えたいのですが...。

イラストレーターに貼り付けた画像をフォトショップで適した解像度に修正してくれるスクリプトなのですが、どなたかこのスクリプトをどうにか
Photoshopの画像解像度の「スタイルを拡大・縮小」と「縦横比固定」と「画像の再サンプル」すべてにチェックを入れた状態で起動するようにアレンジしていただけないでしょうか?

(現状だとスタイルを拡大・縮小にチェックが入っていないようで画像に
レイヤー効果が使用されていると不具合が生じます。)
(illustratorでリンク画像を選択→ExtendScript Toolkitでスクリプト起動→Photoshopで画像変換)


なおこのスクリプトのソース元は ttp://d.hatena.ne.jp/kamiseto/20090610/1244628779 です。


#include 'c.js';//http://svn.coderepos.org//share/platform/illustrator/javascript/lib/c.js
#include 'matrixConvert.jsx';//http://d.hatena.ne.jp/kamiseto/20090502/1241251512
#target 'illustrator';
(function(){
var default_reso = 350;
var reso = prompt ('解像度(pixel/inch)とを数字で入力してください。不正な文字が入力された場合はデフォルトの350pixel/inchで計算します。', 350, '解像度(pixel/inch)となる数字を入力して下さい。')*1;
if(reso == 0 || typeof reso !== 'number')reso = default_reso;

//Photoshop Resize Image Function
function ResizeImage(file,hs,vs,reso){
open(File(file));
var myDoc = app.activeDocument;
var hasClippingPath = (function(){
for(i=0;i<app.activeDocument.pathItems.length;i++)if(app.activeDocument.pathItems[i].kind == PathKind.CLIPPINGPATH)return true;
return false;
})();
var isPSD = (function(){
var f = new File(app.activeDocument.fullName);
f.open('r');
var h = (f.read('4'));
f.close();
return h == '8BPS' ? true : false;
})();
if(isPSD && hasClippingPath){
hs = hs*(myDoc.resolution/72);
vs = vs*(myDoc.resolution/72);
}
myDoc.resizeImage (UnitValue((myDoc .width.as('pixel'))*hs*reso/myDoc.resolution,'pixel'), UnitValue((myDoc .height.as('pixel'))*vs*reso/myDoc.resolution,'pixel'),reso, ResampleMethod.BICUBICSHARPER);
}

//
function FinalImageSize(ImgObj){
var info = getPlacedItemInfo(ImgObj);
if(info['type'] == 'PDF')return;
if(info['type'] == 'EPSF' && info['creator'].match(/Photoshop/) != 'Photoshop')return false;
var mat = matrixConvert.getAll(ImgObj);
//
if(0.7 < ((mat.hs*mat.vs)/10000) && ((mat.hs*mat.vs)/10000) < 1.3)return;
try{
var bt=new BridgeTalk();
bt.target = 'photoshop';
bt.body = uneval (ResizeImage)+"('"+ImgObj.file+"',"+mat.hs/100+","+mat.vs/100+","+reso+");";
bt.onError = function (btObj) {alert( btObj.body + " (" + btObj.headers ["Error-Code"] + ")" ); };
bt.send();
}catch(e){
throw(e);
}
}

function getPlacedItemInfo(pi){
if(pi.file.exists){
var info = {
'type' :'',
'creator' : '',
'color' : ''
};
var f = new File(pi.file);
var g = "";
var header = "";
f.open('r');
switch(g = f.read(4)){
case '8BPS' :
f.seek(0,0);
/*
while(header = f.readln()){
if(header)tmph = header;
};
f.seek((-1*tmph.length)-8,1);
*/
info['type'] = 'PSD';
break;
case '%!PS' :
f.seek(0,0);
var header = (f.read(1000));
info['type'] = 'EPSF';
//Creator
if(creator = header.match (/%%Creator:(.+)/))info['creator'] = creator[1];
//Duotobe
if(duotone = header.match(/%%DocumentCustomColors: \((.+)\)/))info['color'] =duotone[1];
//CMYK or GrayScales
if(colors = header.match (/%%DocumentProcessColors:\s(.+)/))info['color'] = colors[1];
break;
case '%PDF' :
info['type'] = 'PDF';
//break;

default :
/*
f.seek(0,0);
//$.writeln(g);
while(header = f.readln()){$.writeln(header);}
*/
break;
}
f.close();
}
return info;
}


c("S").filter("placedItems").each(FinalImageSize);
//FinalImageSize(app.activeDocument.placedItems[0]);
})();

イラストレーターに貼り付けた画像をフォトショップで適した解像度に修正してくれるスクリプトなのですが、どなたかこのスクリプトをどうにか
Photoshopの画像解像度の「スタイルを拡大・縮小」と「縦横比固定」と「画像の再サンプル」すべてにチェックを入れた状態で起動するようにアレンジしていただけないでしょうか?

(現状だとスタイルを拡大・縮小にチェックが入っていないようで画像に
レイヤー効果が使用されていると不具合が生じます。)
(illustratorでリンク画像を選択→ExtendScript Toolkitでスク...続きを読む

Aベストアンサー

WinXP、CS2で動作確認しました。
全部書くと長くなってしまいますので部分的に書きますね。

function ResizeImage(file,hs,vs,reso){
open(File(file));
(~16行省略~)
......ResampleMethod.BICUBICSHARPER);
}

↑この関数を
↓このように置き換えて実行してみてください。

function ResizeImage(file,hs,vs,reso){
open(File(file));
var desc = new ActionDescriptor();
desc.putUnitDouble( charIDToTypeID( 'Rslt' ), charIDToTypeID( '#Rsl' ), reso );
desc.putBoolean( stringIDToTypeID( 'scaleStyles' ), true );
desc.putBoolean( charIDToTypeID( 'CnsP' ), true );
desc.putEnumerated( charIDToTypeID( 'Intr' ), charIDToTypeID( 'Intp' ), stringIDToTypeID( 'bicubicSharper' ) );
executeAction( charIDToTypeID( 'ImgS' ), desc, DialogModes.NO );
}

WinXP、CS2で動作確認しました。
全部書くと長くなってしまいますので部分的に書きますね。

function ResizeImage(file,hs,vs,reso){
open(File(file));
(~16行省略~)
......ResampleMethod.BICUBICSHARPER);
}

↑この関数を
↓このように置き換えて実行してみてください。

function ResizeImage(file,hs,vs,reso){
open(File(file));
var desc = new ActionDescriptor();
desc.putUnitDouble( charIDToTypeID( 'Rslt' ), charIDToTypeID( '#Rsl' ), reso );
desc.putBoolean( stringIDToTypeID( 'scaleStyle...続きを読む

Qスクリプト内から他の外部スクリプトを読み込みたい

Java Script初級者です。
外部スクリプト内から他の外部スクリプトを読み込むことは可能ですか?

実現したい内容はスクリプト内の関数から▼下のような感じで外部ファイルを読み込むことです。
function check(fm) {
<script language="JavaScript" src="AAA.js"></script>
}

何か良い方法がありましたらぜひ教えてください。

Aベストアンサー

え~と、細切れに書いたことをまとめますと
以下のようになります。
これで、動くはず・・・・・

<html>

<head>

<script>

function dynamicLoad(jsFileName){
var now =new Date();
var getData =jsFileName+'?nc='+now.getTime();
if(document.all){
if(navigator.userAgent.indexOf("Win")!=-1){
eval(document.all('dynld')).src = getData;
}else if(navigator.userAgent.indexOf("Mac")!=-1){
document.body.insertAdjacentHTML('BeforeEnd','<scr'+'ipt src="'+getData+'"><scr'+'ipt/>');
}
}else if(document.getElementById){
var cnode=document.getElementById('dynld');
var nnode=document.createElement('script');
nnode.src=getData;
nnode.id ='dynld';
cnode.parentNode.replaceChild(nnode,cnode);
}else{
if(document.images){
var datasrc=new Image();
datasrc.src=getData;
location.href=datasrc.src;
}
}
}

function check() {
if(document.images["soldout"]){
alert("完売しました!");
return false;
}else if(!document.forms[0].size.selectedIndex) {
alert("サイズを選択してください!");
return false;
}else {
//
//Google Code for Purchase Conversion Page
//
 var google_conversion_id=1071970427;
 var google_conversion_language="ja";
 var google_conversion_format="1";
 var google_conversion_color="FFFFFF";
 if(1){var google_conversion_value=1;}
 var google_conversion_label="Purchase";
 dynamicLoad('http://bosan.net/test2/test2.js');
//
//Overture Services Inc. 07/15/2003
//
 var cc_tagVersion = "1.0";
 var cc_accountID = "123456789";
 var cc_marketID = "4";
 var cc_protocol="http";
 var cc_subdomain = "convctr";
 if(location.protocol == "https:"){
 cc_protocol="https";
 cc_subdomain="convctrs";
 }
 var cc_queryStr = "?" + "ver=" + cc_tagVersion + "&aID=" + cc_accountID + "&mkt=" + cc_marketID +"&ref=" + escape(document.referrer);
 var cc_imageUrl = cc_protocol + "://" + cc_subdomain + ".overture.com/images/cc/cc.gif" + cc_queryStr;
 var cc_imageObject = new Image();
 cc_imageObject.src = cc_imageUrl;
//
//外部との通信完了後に送信するために送信遅延時間を設定
//
 setTimeout("xx()",2000);//この時間を調整2000は2秒の意味
}
}

function xx(){
document.forms[0].submit();
}

document.write('<scr'+'ipt id="dynld"></scr'+'ipt>');

</script>

<head>

<boy>

<form action="about:blank" method="POST">
<select name="size">
<option>▼選択</option>
<option>10cm</option>
<option>20cm</option>
</select>
<input type="button" value="買い物かごに入れる" onclick="check()" />
</form>

</body>

</html>





.

え~と、細切れに書いたことをまとめますと
以下のようになります。
これで、動くはず・・・・・

<html>

<head>

<script>

function dynamicLoad(jsFileName){
var now =new Date();
var getData =jsFileName+'?nc='+now.getTime();
if(document.all){
if(navigator.userAgent.indexOf("Win")!=-1){
eval(document.all('dynld')).src = getData;
}else if(navigator.userAgent.indexOf("Mac")!=-1){
document.body.insertAdjacentHTML('BeforeEnd','<scr'+'ipt src="'+getData+'"><scr'+'ipt/...続きを読む

Qmd5.jsとbase64.jsがスクリプトのJavaScriptのパ

md5.jsとbase64.jsがスクリプトのJavaScriptのパスワード設定について、教えて下さい。
JavaScriptを扱っているサイトで、以下のを使用しているのですが、そのサイトであまり詳しい説明が書かれてないので四苦八苦しています。
契約しているサーバーのセキュリティー上、CGIとPHPが使えないので、JavaScriptを使用したいと思っています。
インデックスページに設置して、パスワードが通ったらトップページに移動するようにさせたいと思っています。
以下ので、どこが不備なのか分からないので、教えて下さい。
JavaScriptに関しては初心者なのですが、初心者で以下のは難易度が高いのでしょうか?
また、md5.jsとbase64.jsそのものの設定が問題なのでしょうか?
本当に困っていますので、是非とも教えて下さい。
お願いします。


<html>
<Head>
<script language="JavaScript" src="md5.js"></script>
<script language="JavaScript" src="base64.js"></script>
<script language="JavaScript"><!--
var pwmd5 = "";
function passchk() {
var pw;

pw = document.f.passwd.value;
pw = base64encode(pw);
pw = MD5_hexhash(pw);
if(pw ==pwmd5 )
else
alert("パスワードが違います");
}
// -->
</script>

<body>
<form name="f">
<input type=text name="passwd"><input type=button value="入室" onClick="passchk()"></form></body>
</Head>
</html>

md5.jsとbase64.jsがスクリプトのJavaScriptのパスワード設定について、教えて下さい。
JavaScriptを扱っているサイトで、以下のを使用しているのですが、そのサイトであまり詳しい説明が書かれてないので四苦八苦しています。
契約しているサーバーのセキュリティー上、CGIとPHPが使えないので、JavaScriptを使用したいと思っています。
インデックスページに設置して、パスワードが通ったらトップページに移動するようにさせたいと思っています。
以下ので、どこが不備なのか分からないので、教えて下さい。
Ja...続きを読む

Aベストアンサー

> JavaScriptに関しては初心者なのですが、初心者で以下のは難易度が高いのでしょうか?
#1の方が仰るように「高度な JavaScript 技集」をベースにしているのだと思いますが、サイトにはしっかりと「初心者お断り」と書いてあるんですよね…。
http://www.onicos.com/staff/iz/amuse/javascript/expert/

でもまあ、この手の質問(JavaScriptでパスワード認証したい)はよく見るので、今後同じ質問があったときにURL参照できるように書いておきました。
(全角空白は半角空白orタブ文字に置換してください)

------------
<!DOCTYPE html>
<html lang="ja">
<head>
 <meta charset="utf-8" />
 <title>会員ページへの入り口</title>

 <!-- 高度な JavaScript 技集 (http://www.onicos.com/staff/iz/amuse/javascript/expert/) より -->
 <script type="text/javascript" src="./md5.js"></script>
 <script type="text/javascript">
 function checkMd5Pass(event){
  var form = event.target || event.srcElement;
  var doc = form.ownerDocument;
  var win = doc.defaultView || doc.parentWindow;
  var inputPass = form.elements.Password.value;
  var md5Pass = '098f6bcd4621d373cade4e832627b4f6'; // "test" のMD5ハッシュ値

  if(MD5_hexhash(inputPass) === md5Pass){ // MD5ハッシュ値の比較
   alert('OK!');
   win.location.href = MD5_hexhash(inputPass + 'foo') + '.html'; // 入力文字列に適当な文字列を混ぜてハッシュ化した値をURLに埋め込んで飛ばす
  } else {
   alert('NG!');
  }

  event.preventDefault ? event.preventDefault() : event.returnValue = false; // デフォルト動作をキャンセル (キャンセルできなかったら、error.html に行く)
 }
 </script>
</head>
<body>

<h1>会員ページへの入り口</h1>

<form action="./error.html" id="Secret" onsubmit="checkMd5Pass(event);">
 <fieldset>
  <p><label for="Password">パスワード</label><input type="text" name="Password" id="Password" /></p>
  <p><input type="submit" name="submit" value="送信"></p>
 </fieldset>
</form>

</body>
</html>
-------------

URLにパスワードを埋め込んでソースからパスワードを求められないようにする手法はよく見ますが、URLにパスワード自体が埋め込まれる故にURLを晒されるとパスワードまで丸わかりです。
なので、MD5ハッシュ値をURLにしました。入力文字列のMD5ハッシュ値を使うとソースからわかってしまうため、適当な文字列を混ぜてハッシュ化しています。

簡単閲覧制限!JavaScriptでパスワード認証 - [ホームページ作成]All About
http://allabout.co.jp/internet/hpcreate/closeup/CU20041220A/

ただし、これだけでは完全ではありません。
入り口から会員ページにアクセスは出来なくなりますが、一度会員ページを知った人がURLを晒してしまえば、誰でもアクセスできる状態になります。

(入力可能な文字数を超えるので、後のコメントに続きを書きます)

> JavaScriptに関しては初心者なのですが、初心者で以下のは難易度が高いのでしょうか?
#1の方が仰るように「高度な JavaScript 技集」をベースにしているのだと思いますが、サイトにはしっかりと「初心者お断り」と書いてあるんですよね…。
http://www.onicos.com/staff/iz/amuse/javascript/expert/

でもまあ、この手の質問(JavaScriptでパスワード認証したい)はよく見るので、今後同じ質問があったときにURL参照できるように書いておきました。
(全角空白は半角空白orタブ文字に置換してください)

---------...続きを読む

Qパスワード制限スクリプト。ウィンドウを閉じるスクリプトについて

WEBページにパスワード制限をかけたいと思います。
今回JavaScriptなので、めちゃめちゃ強固なものではありませんが。

下のようなスクリプトを用意しました。
------------------------

pass = prompt("パスワードを入力して下さい","");
if(pass != "XXXXX") {
parent.top.window.close();
}

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

これでも動くのですが、
パスワードが不正なとき、画面を閉じようとする設計です。
ただし、その時IEだと、
「画面を閉じようとしています」と聞かれ、
「はい」「いいえ」の選択肢がでます。

「はい」・・・もちろん閉じます。
「いいえ」・・画面そのまま残ります。

これじゃ意味ないんです。
「いいえ」を選んでもとにかく閉じさせる方法が必要なんです。

「いいえ」を選択しても、繰り返し繰り返し「閉じようとしています」と聞かれるような。
なにかいいスクリプトはないでしょうか?

WEBページにパスワード制限をかけたいと思います。
今回JavaScriptなので、めちゃめちゃ強固なものではありませんが。

下のようなスクリプトを用意しました。
------------------------

pass = prompt("パスワードを入力して下さい","");
if(pass != "XXXXX") {
parent.top.window.close();
}

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

これでも動くのですが、
パスワードが不正なとき、画面を閉じようとする設計です。
ただし、その時IEだと、
...続きを読む

Aベストアンサー

parent.top.window.close();
と記述してありますので、おそらくフレームを利用した画面構成なのだと思います。
記憶違いでなければ、IEの仕様でダイアログが表示され
ることがあったと思いますので、この辺りを調べれば
いいアイデアが見つかるのでは?
# 外したらごめんなさい

余談ですが:
JavaScriptでパスワードチェックを行うようであれば、MD5やSH-1などのハッシュ値を利用した方が、今より安全性を考慮した作りになりますよ。


人気Q&Aランキング

おすすめ情報