'자바스크립트'에 해당되는 글 37건
- 2011/03/15 Javascript - Ajax module on OWA(MS Outlook Web Apps.)
- 2010/04/10 JSINQ - LINQ With JavaScript
- 2010/02/18 Javascript - Element Opacity Control for Cross Browser
- 2009/07/20 Javascript : Microsoft OS & Internet Explorer Agent Check
- 2009/07/16 2009년 07월 16일 - sunyruru 미투데이 일기장
- 2009/03/21 sunyruru의 미투데이 - 2009년 3월 20일
- 2009/02/17 스크립트에서 클라이언트 프로그램 실행 시키는 방법 (3)
- 2009/01/05 [js]브라우저의 오른쪽 상단의 X표시를 누르거나 창을 닫을때 이벤트 잡기! (1)
- 2008/05/23 다양한 HTML 소스복사 / 마우스 우클릭 방지 모음 (2)
- 2008/03/06 드래그 드랍(Drag and Drop) 으로 개체의 정보 다루기
Javascript - Ajax module on OWA(MS Outlook Web Apps.)

잠시 참고용으로 분석한 내용;
var POST="POST";
var GET="GET";
if(!g_fModuleLoaded)var g_fModuleLoaded={};
if(!g_fModuleLoaded[".\\dom/ajaxrequest.js".toLowerCase()])(function(){
Type.createNamespace("Owa.Dom");
var fChecked=false;
var fUseNative=true;
var rgRequests=[];
Owa.Dom.AjaxRequest = function Owa$Dom$AjaxRequest(sUrl,sCmd,oCtx,cb,fSync,fNeverDispose){
var oXHR;
if(fChecked){
oXHR=fUseNative ? new XMLHttpRequest() : new ActiveXObject("MSXML2.xmlhttp")
}
else
{
try
{
oXHR=new XMLHttpRequest();
fUseNative=true
}
catch(e)
{
oXHR=new ActiveXObject("MSXML2.xmlhttp");
fUseNative=false
}
fChecked=true
}
this.oXmlHttp=oXHR;
this.oXmlHttp.open(sCmd,sUrl,!fSync);
this.sUrl=sUrl;
this.oCtx=oCtx;
this.fSync=fSync;
this.fLock=false;
this._fNeverDispose=!!fNeverDispose;
this.iIndex=rgRequests.length;
rgRequests.push(this);
if(cb){
this.cb=cb;
if(!fSync){
this.oXmlHttp.onreadystatechange=new Function("Owa.Dom.AjaxRequest._cbOnReadyStateChange("+this.iIndex+");")
}
}
Owa.Dom.AjaxRequest.get_OnRequestCreated().dispatch(this)
};
Owa.Dom.AjaxRequest.prototype.send=function Owa$Dom$AjaxRequest$send(sBody){
if(isDf(typeof(sBody))){
this.oXmlHttp.send(sBody)
}
else{
this.oXmlHttp.send(null)
}
if(this.fSync){
return this.onComplete()
}
else{
return null
}
};
Owa.Dom.AjaxRequest.prototype.setRequestHeader=function Owa$Dom$AjaxRequest$setRequestHeader(sHeaderName,sHeaderValue){
this.oXmlHttp.setRequestHeader(sHeaderName,sHeaderValue)
};
Owa.Dom.AjaxRequest.prototype.cancelCallback=function Owa$Dom$AjaxRequest$cancelCallback(){
if(this.fLock)throw"cannot cancel the callback when it is already finished or cancelled";
this.fLock=true;
rgRequests[this.iIndex].oXmlHttp.abort();
delete rgRequests[this.iIndex]
};
Owa.Dom.AjaxRequest.prototype.onComplete=function Owa$Dom$AjaxRequest$onComplete(){
if(!this.fLock)
{
this.fLock=true;
Owa.Dom.AjaxRequest.get_OnResponseReceived().dispatch(this);
var oCallbackResult=null;
if(this.cb!=null)oCallbackResult=this.cb(this);
delete rgRequests[this.iIndex];
Owa.Dom.AjaxRequest.get_OnCallbackCompleted().dispatch(this);
return oCallbackResult
}
};
Owa.Dom.AjaxRequest._cbOnReadyStateChange=function Owa$Dom$AjaxRequest$_cbOnReadyStateChange(i){
var oRequest=rgRequests[i];
if(oRequest&&4==oRequest.oXmlHttp.readyState){
if(0==oRequest.oXmlHttp.status&&(Owa.Utility.isFirefox()||Owa.Utility.isSafari())){
oRequest.cancelCallback()
}
else{
oRequest.onComplete()
}
}
};
Owa.Dom.AjaxRequest.disposeAjaxRequests=function Owa$Dom$AjaxRequest$disposeAjaxRequests(){
for(var i=0;i<rgRequests.length;i++){
if(rgRequests[i]){
var oR=rgRequests[i];
if(oR._fNeverDispose)continue;
Owa.Dom.AjaxRequest.abortAnXMLHttpRequest(oR.oXmlHttp);
rgRequests[i]=null
}
}
};
Owa.Dom.AjaxRequest.abortAjaxRequests=function Owa$Dom$AjaxRequest$abortAjaxRequests(sNs,oCmd){
var oR=null;
for(var i=0;i<rgRequests.length;i++){
oR=rgRequests[i];
if(oR&&oR.oCtx&&isDf(typeof(oR.oCtx.sNs))&&(oR.oCtx.sNs==sNs)&&isDf(typeof(oR.oCtx.sEv))&&isDf(typeof(oCmd[oR.oCtx.sEv]))){
if(oR.fLock) continue;
oR.fLock=true;
Owa.Dom.AjaxRequest.abortAnXMLHttpRequest(oR.oXmlHttp);
rgRequests[i]=null
}
}
};
Owa.Dom.AjaxRequest.abortAnXMLHttpRequest=function Owa$Dom$AjaxRequest$abortAnXMLHttpRequest(oX){
if(isDf(typeof(oX))&&oX&&isDf(typeof(oX.abort))){
try{
oX.onreadystatechange=function(){};
oX.abort()
}
catch(e){}
}
};
var ON_REQUEST_CREATED="onRequestCreated";
var ON_RESPONSE_RECEIVED="onResponseReceived";
var ON_CALLBACK_COMPLETED="onCallbackCompleted";
var _oStaticEvents={};
_oStaticEvents[ON_REQUEST_CREATED]=new Owa.Utility.EventHandlerCollection();
_oStaticEvents[ON_RESPONSE_RECEIVED]=new Owa.Utility.EventHandlerCollection();
_oStaticEvents[ON_CALLBACK_COMPLETED]=new Owa.Utility.EventHandlerCollection();
Owa.Dom.AjaxRequest.get_OnRequestCreated=function Owa$Dom$AjaxRequest$get_OnRequestCreated(){
return _oStaticEvents[ON_REQUEST_CREATED]
};
Owa.Dom.AjaxRequest.get_OnResponseReceived=function Owa$Dom$AjaxRequest$get_OnResponseReceived(){
return _oStaticEvents[ON_RESPONSE_RECEIVED]
};
Owa.Dom.AjaxRequest.get_OnCallbackCompleted=function Owa$Dom$AjaxRequest$get_OnCallbackCompleted(){
return _oStaticEvents[ON_CALLBACK_COMPLETED]
}
})();
g_fModuleLoaded[".\\dom/ajaxrequest.js".toLowerCase()]=1;
'Web > JavaScript' 카테고리의 다른 글
| Javascript - document.execCommand Method (0) | 2011/07/19 |
|---|---|
| Javascript - Ajax module on OWA(MS Outlook Web Apps.) (0) | 2011/03/15 |
| for Javascript (0) | 2011/03/08 |
| Javascript - Selection text of web page (0) | 2011/03/05 |
| Persisting Collapsible TOC State (0) | 2011/03/02 |
| Add Twitter to your blog (2) | 2010/11/05 |
훈스닷넷에서 재미있는 글을 발견해서 아래처럼 스크랩 해왔습니다 ^ ^
Javascript에서 LINQ 문법을 사용할 수 있다는 점이 정말 재밌네요~
아래 글을 참고해주세요 ~~
Ajaxian에서 어제 흥미로운 기사를 봐서 블로깅후에 훈스닷넷 개시판에도 남깁니다.
JSINQ란 녀석이구요.
자바스크립트의 객체나 데이터를 Enumerable 한객체로 변경한뒤에 LINQ문법을 사용할수 있는데요.
제어폭도 생각보다 넓고 놀라운건 .NET 프레임웍 3.5의 연산자를 모두 지원하구요.(ajaxian에는 3.0이라고 나와있는데 codeplex문서는 3.5군요) generic의 확장함수또한 비슷한형식으로 지원하며.. 4.0의 zip머시기 (먼지모름) 도 지원한다고하내요.
자세한 내용은 해당테스트 페이와 관련 문서 자료가서셔 보시면 알겠지만 테스트페이지에서 보면 신기하긴하군요.
해당테스트페이지 바로가기
관련문서 및 자료
'Web > JavaScript' 카테고리의 다른 글
| Persisting Collapsible TOC State (0) | 2011/03/02 |
|---|---|
| Add Twitter to your blog (2) | 2010/11/05 |
| JSINQ - LINQ With JavaScript (0) | 2010/04/10 |
| Javascript - Element Opacity Control for Cross Browser (0) | 2010/02/18 |
| Ext JS 3.0 (0) | 2009/09/23 |
| Javascript : Microsoft OS & Internet Explorer Agent Check (0) | 2009/07/20 |
Javascript - Element Opacity Control for Cross Browser

자바스크립트로 HTML Element의 투명도(Opacity)를 조절하는 경우 크로스 브라우저(Cross Browser)를 지원하기 위해 삽질을 하게 된다.
이럴 때 아래 코드를 이용하자
function setOpacity(id, opacity) {
var object = id.style;object.opacity = (opacity / 100);
object.filter = "alpha(opacity=" + opacity + ")";
object.MozOpacity = (opacity / 100);
object.KhtmlOpacity = (opacity / 100);
}
'Web > JavaScript' 카테고리의 다른 글
| Add Twitter to your blog (2) | 2010/11/05 |
|---|---|
| JSINQ - LINQ With JavaScript (0) | 2010/04/10 |
| Javascript - Element Opacity Control for Cross Browser (0) | 2010/02/18 |
| Ext JS 3.0 (0) | 2009/09/23 |
| Javascript : Microsoft OS & Internet Explorer Agent Check (0) | 2009/07/20 |
| Javascript – 이벤트 추가 (0) | 2009/05/08 |
Javascript : Microsoft OS & Internet Explorer Agent Check

Web Page에서 브라우저와 OS에 따라 다른 조치를 해야 하는 경우가 있습니다.
그래서 브라우저에서 받아올 수 있는 User Agent 값을 분석해서 이에 이용하게 되죠.
다음과 같이 값을 체크하는 부분을 공통으로 작성하여 가져다가 쓰면 좋을 것 같네요.
테스트 페이지(Test page): BrowserTest.html
<html>
<head>
<title>Browser Agent Test</title>
<script type="text/javascript">
function BrowserIs()
{
var agt = navigator.userAgent.toLowerCase();
this.osver = 1.0;
if (agt)
{
var stOSVer = agt.substring(agt.indexOf("windows ") + 11);
this.osver = parseFloat(stOSVer);
}
this.major = parseInt(navigator.appVersion);
this.nav = ((agt.indexOf('mozilla')!=-1)&&((agt.indexOf('spoofer')==-1) && (agt.indexOf('compatible')==-1)));
this.nav2 = (this.nav && (this.major == 2));
this.nav3 = (this.nav && (this.major == 3));
this.nav4 = (this.nav && (this.major == 4));
this.nav6 = this.nav && (this.major == 5);
this.nav6up = this.nav && (this.major >= 5);
this.nav7up = false;
if (this.nav6up)
{
var navIdx = agt.indexOf("netscape/");
if (navIdx >=0 )
this.nav7up = parseInt(agt.substring(navIdx+9)) >= 7;
}
this.ie = (agt.indexOf("msie")!=-1);
this.aol = this.ie && agt.indexOf(" aol ")!=-1;
if (this.ie)
{
var stIEVer = agt.substring(agt.indexOf("msie ") + 5);
this.iever = parseInt(stIEVer);
this.verIEFull = parseFloat(stIEVer);
}
else
this.iever = 0;
this.ie3 = ( this.ie && (this.major == 2));
this.ie4 = ( this.ie && (this.major == 4));
this.ie4up = this.ie && (this.major >=4);
this.ie5up = this.ie && (this.iever >= 5);
this.ie55up = this.ie && (this.verIEFull >= 5.5);
this.ie6up = this.ie && (this.iever >= 6);
this.ie7up = this.ie && (this.iever >= 7);
this.ie8up = this.ie && (this.iever >= 8);
this.win16 = ((agt.indexOf("win16")!=-1)
|| (agt.indexOf("16bit")!=-1) || (agt.indexOf("windows 3.1")!=-1)
|| (agt.indexOf("windows 16-bit")!=-1) );
this.win31 = (agt.indexOf("windows 3.1")!=-1) || (agt.indexOf("win16")!=-1) ||
(agt.indexOf("windows 16-bit")!=-1);
this.win98 = ((agt.indexOf("win98")!=-1)||(agt.indexOf("windows 98")!=-1));
this.win95 = ((agt.indexOf("win95")!=-1)||(agt.indexOf("windows 95")!=-1));
this.winnt = ((agt.indexOf("winnt")!=-1)||(agt.indexOf("windows nt")!=-1));
this.win32 = this.win95 || this.winnt || this.win98 ||
((this.major >= 4) && (navigator.platform == "Win32")) ||
(agt.indexOf("win32")!=-1) || (agt.indexOf("32bit")!=-1);
this.os2 = (agt.indexOf("os/2")!=-1)
|| (navigator.appVersion.indexOf("OS/2")!=-1)
|| (agt.indexOf("ibm-webexplorer")!=-1);
this.mac = (agt.indexOf("mac")!=-1);
this.mac68k = this.mac && ((agt.indexOf("68k")!=-1) ||
(agt.indexOf("68000")!=-1));
this.macppc = this.mac && ((agt.indexOf("ppc")!=-1) ||
(agt.indexOf("powerpc")!=-1));
this.w3c = this.nav6up;
}
function ObjectStripShow(obj, outputDivId)
{
var outputStr = "";
for (var i in obj) outputStr += i + " = " + eval('obj.' + i) + "<br/>\n";
if (outputDivId == null || document.getElementById(outputDivId) == null)
document.write(outputStr);
else
document.getElementById(outputDivId).innerHTML = outputStr;
}
window.onload = function()
{
var bi = new BrowserIs();
ObjectStripShow(bi, 'output');
};
</script></head>
<body>
<div id="output">
</div>
</body>
</html>
결과(Result ):
osver = 5.2
major = 4
nav = false
nav2 = false
nav3 = false
nav4 = false
nav6 = false
nav6up = false
nav7up = false
ie = true
aol = false
iever = 7
verIEFull = 7
ie3 = false
ie4 = true
ie4up = true
ie5up = true
ie55up = true
ie6up = true
ie7up = true
ie8up = false
win16 = false
win31 = false
win98 = false
win95 = false
winnt = true
win32 = true
os2 = false
mac = false
mac68k = false
macppc = false
w3c = false
'Web > JavaScript' 카테고리의 다른 글
| Javascript - Element Opacity Control for Cross Browser (0) | 2010/02/18 |
|---|---|
| Ext JS 3.0 (0) | 2009/09/23 |
| Javascript : Microsoft OS & Internet Explorer Agent Check (0) | 2009/07/20 |
| Javascript – 이벤트 추가 (0) | 2009/05/08 |
| 스크립트에서 클라이언트 프로그램 실행 시키는 방법 (3) | 2009/02/17 |
| [js]브라우저의 오른쪽 상단의 X표시를 누르거나 창을 닫을때 이벤트 잡기! (1) | 2009/01/05 |
- OCS의 DMessengerEvents::OnContactStatusChange (http://msdn.microsoft.com/en-us/library/bb758796.aspx) . Scriptable 이라고 써있으니 스크립트에서 처리가능해야 하는데 왜 안되냐..ㅡㅡ2009-07-08 16:06:25
- 자바스크립트 유용한 함수들을 잘 정리해둔 사이트를 찾았당… 유후~ 나중에도 쓸만한 내용이 많겠군.. 훗~2009-07-14 19:19:55
- 브라우져의 주소 부분에 javascript:var w=window.document;var p=w.plugins;for(var i in w)w.writeln(i+“=”+eval('w.'+i)+“<br/>”); 이렇게 실행하면 document개체의 값을 볼 수 있네요.2009-07-15 10:12:29
- 아오.. C++ ATL COM 개체에서 받은 이벤트를 어떻게 JavaScript로 콜백해줘야 하는거냐 ㅠㅠ어렵다 제기랄…2009-07-15 14:47:00
- 우리 진상.. 얼마나 피곤했으면 신입이 한시간을 라커룸에서 업무시간에 잤을까 -_ -;; 그래도 조심해야지 신입인데.. 조심좀 해~2009-07-15 16:48:19
- Silverlight 2 Unit Test를 .net계의 멋진 행님 스캇 구슬이 님이 만드셨나부다. Visual Studio랑 연계도 되고.. Silverlight 2.0 용으로 브라우져에서 GUI 환경으로 유닛 테스트가 되니 꽤 좋은것 같다…2009-07-15 20:08:39
이 글은 sunyruru님의 2009년 7월 8일에서 2009년 7월 15일까지의 미투데이 내용입니다.
'FunFun' 카테고리의 다른 글
| 2009년 7월 22일 - sunyruru 미투데이 일기장 (0) | 2009/07/23 |
|---|---|
| 2009년 7월 16일 - sunyruru 미투데이 일기장 (0) | 2009/07/17 |
| 2009년 07월 16일 - sunyruru 미투데이 일기장 (0) | 2009/07/16 |
| sunyruru의 미투데이 - 2009년 3월 22일 (0) | 2009/03/23 |
| sunyruru의 미투데이 - 2009년 3월 20일 (0) | 2009/03/21 |
| sunyruru의 미투데이 - 2009년 3월 13일 (0) | 2009/03/14 |
- 3 ways to define a JavaScript class / phpied.com - 자바스크립트 클래스 형식으로 지정하는 방법 자주 까먹네요 ㅠㅠ2009-03-20 16:04:03
이 글은 sunyruru님의 2009년 3월 20일의 미투데이 내용입니다.
'FunFun' 카테고리의 다른 글
| 2009년 07월 16일 - sunyruru 미투데이 일기장 (0) | 2009/07/16 |
|---|---|
| sunyruru의 미투데이 - 2009년 3월 22일 (0) | 2009/03/23 |
| sunyruru의 미투데이 - 2009년 3월 20일 (0) | 2009/03/21 |
| sunyruru의 미투데이 - 2009년 3월 13일 (0) | 2009/03/14 |
| sunyruru의 미투데이 - 2009년 3월 12일 (0) | 2009/03/13 |
| sunyruru의 미투데이 - 2009년 3월 11일 (0) | 2009/03/12 |
일단 이건 MS IE 전용이라는 가정이 있어야하고 -_ -;
먼저 클라이언트에 "C:\winetc\eMule\emule.exe" 파일(실행파일)이 있다고 가정한다.
보안문제가 발생할 수 있으므로, "신뢰할 수 있는 사이트"에 등록되어 있어야 사용 가능한 스크립트입니다.
작성 HTML
과연 써먹을 구석이 있긴 한걸지 -_ -;;<html>
<head><head>
<script language="javascript">
function aa()
{
var objWSH = new ActiveXObject("WScript.Shell");
var retval = objWSH.Run("C:\\winetc\\eMule\\emule.exe",1,true);
}
</script><body>
<input type="button" name="test" onclick="aa();">
</body>
</html>
그래도..
HTA application(MSDN을 찾아보시길;)을 만든다면 써먹지 않을지 생각된다;
'Web > JavaScript' 카테고리의 다른 글
| Javascript : Microsoft OS & Internet Explorer Agent Check (0) | 2009/07/20 |
|---|---|
| Javascript – 이벤트 추가 (0) | 2009/05/08 |
| 스크립트에서 클라이언트 프로그램 실행 시키는 방법 (3) | 2009/02/17 |
| [js]브라우저의 오른쪽 상단의 X표시를 누르거나 창을 닫을때 이벤트 잡기! (1) | 2009/01/05 |
| DHTML을 빠르게 하는 12가지 튜닝 (0) | 2008/07/14 |
| 다양한 HTML 소스복사 / 마우스 우클릭 방지 모음 (2) | 2008/05/23 |
-
JKwang 2009/04/23 23:31
질문있습니다만.위와같이 하면 "자동화 서버는 개체를 작성할 수 없습니다."라고 자바스크립트 에러가 나오는데 해결방안이 있는지요???
신뢰할수있는싸이트에 등록해주었고 로컬이랑 인터넷 영역에 안전하지않은 스크립팅~~~ 사용으로 해주었습니다.ㅠ_ㅠ;;-
써니루루 2009/04/24 02:51
마지막줄에 적어둔 내용대로 웹 페이지 상에서는 스크립트 권한 문제로 사용하지 못하는 경우가 많습니다.
그래서 HTA 프로그램 등에만 사용하셔야할 것 같습니다.
위 코드를 응용해서 *.hta 확장자로 windows 로컬에서만 작동하는 프로그램을 개발할 때 유용하죠.
일반적으로 CD에 들어있는 autorun에 실행될 설치 페이지나 cd 목록 페이지를 만들때 자주 사용되는 *.hta에 적용하기 좋은 내용입니다.
-
창의 오른쪽 상단의 X표시를 누르거나 창을 닫을때 이벤트 잡기
비밀은 onbeforeunload 이벤트 였군요.
아래와 같은 코드 작성시 창을 닫게 되면 아래의 그림이 나타납니다.
==============================================================================
<HTML>
<HEAD>
<SCRIPT>
function closeIt()
{
event.returnValue = "푸클클 정말 닫아? 진짜루?";
}
</SCRIPT>
</HEAD>
<BODY onbeforeunload="closeIt()">
<a href="http://www.microsoft.com">Click here to navigate to
www.microsoft.com</a>
</BODY>
</HTML>
==============================================================================
간단하네요..
까먹지만 않는다면 ㅎㅎ
'Web > JavaScript' 카테고리의 다른 글
| Javascript – 이벤트 추가 (0) | 2009/05/08 |
|---|---|
| 스크립트에서 클라이언트 프로그램 실행 시키는 방법 (3) | 2009/02/17 |
| [js]브라우저의 오른쪽 상단의 X표시를 누르거나 창을 닫을때 이벤트 잡기! (1) | 2009/01/05 |
| DHTML을 빠르게 하는 12가지 튜닝 (0) | 2008/07/14 |
| 다양한 HTML 소스복사 / 마우스 우클릭 방지 모음 (2) | 2008/05/23 |
| 드래그 드랍(Drag and Drop) 으로 개체의 정보 다루기 (0) | 2008/03/06 |
|
* 프로그래밍하다가 소스 막기가 필요한 곳이 많아 보여서 몇개의 팁을 정리했습니다. 주의할 점은 소스에서 설정을 해 놓아도 HTML내에 Iframe이 있는 경우 Iframe안에 있는 다른 html에는 설정이 안 된다는 점입니다. 그래서 상태바에 링크 주소 막기 같은 경우는 꽁수로
function status_message() 이런 식으로 쓰는 경우도 있습니다. 계속적으로 상태바의 주소글자를 바꿔주는 아주 안 좋은 방식입니다. (그리고 아주 잠깐은 소스가 보입니다. = =;) 아무튼 Iframe, modal 등이 아닌 곳은 다 적용됩니다. <목차> 1. 마우스 오른쪽메뉴, 드래그, 선택복사 금지하기 7. 상태바의 링크 주소 감추기 8. 익스플로러 6의 이미지 도구모음(저장버튼 등) 뜨는 것 막기. 1. 마우스 오른쪽메뉴, 드래그, 선택복사 금지하기 | |
|
<body oncontextmenu='return false' ondragstart='return false' onselectstart='return false'> | |
|
oncontextmenu='return false' : 마우스 오른쪽 메뉴 금지 참고 onkeydown="return false" 키보드 완전 금지
| |
| 2. 마우스 오른쪽 버튼 클릭시 경고 메세지 | |
| <script language=JavaScript>function click() {if ((event.button==2) || (event.button==2)) {alert('죄송합니다. 오른쪽 마우스 금지입니다. - 태그인넷 ');}}document.onmousedown=click// --></script> | |
|
3. 프레임 소스보기 막기 | |
| <script language="JavaScript"> if(parent.frames.length <= 0) { top.location.href="http://tagin.net"; } </script> | |
|
프레임을 쓰는 홈페이지에서 프레임 페이지가 아닌 하위 프레임으로 직접 들어갔을 때 http://tagin.net으로 이동하는 예제입니다 | |
| 4. 새로고침(F5), 전체창(F11) 막기 | |
|
<SCRIPT LANGUAGE="JavaScript"> | |
| 5. shift, ctrl (쉬프트, 컨트롤)키 클릭하면 경고메세지 띄우기 | |
|
<script language="JavaScript"> | |
| 6. 동영상 마우스 오른쪽 버튼 막기 | |
|
<embed src="http://tagin.net/js/1.wmv" EnableContextMenu="false" > <object classid='clsid:22D6F312-B0F6-11D0-94AB-0080C74C7E95' id='MediaPlayer1' width="580" height="387"> | |
| 동영상 태그(embed, object) 자세히 보기 | |
| 7. 상태바의 링크 주소 감추기 | |
|
<script language=JavaScript> 다른 소스 <a href="http://tagin.net" onmouseover="self.status='태그인넷';return true" onmouseout="self.status=' 태그인넷';return true">링크 </a> <head> | |
8. 익스플로러 6의 이미지 도구모음(저장버튼 등) 뜨는 것 막기.
| |
| 9. 무단링크 금지 스크립트 | |
| <script language='JavaScript'> //link1 과 link2 지정해 넣은 홈을 통해서 들어오지 않으면 무단링크 취급 기본홈페이지로 열리는 소스 var home_url="http://www.tagin.net"; // 기본 홈페이지 var link1="http://tagin.net/"; var link2="http://www.naver.com/"; if (document.referrer.indexOf(home_url)==-1 && document.referrer.indexOf(link1)==-1 && document.referrer.indexOf(link2)==-1) { if (document.referrer) { alert("무단링크 하셨습니다.!"); // 무단링크시 에러 메세지 window.location=home_url; // 기본 홈으로 이동 } else { alert("무단링크 하셨습니다. "); // 무단링크시 에러 메세지 window.location=home_url; // 기본 홈으로 이동 } } </script> |
'Web > JavaScript' 카테고리의 다른 글
| [js]브라우저의 오른쪽 상단의 X표시를 누르거나 창을 닫을때 이벤트 잡기! (1) | 2009/01/05 |
|---|---|
| DHTML을 빠르게 하는 12가지 튜닝 (0) | 2008/07/14 |
| 다양한 HTML 소스복사 / 마우스 우클릭 방지 모음 (2) | 2008/05/23 |
| 드래그 드랍(Drag and Drop) 으로 개체의 정보 다루기 (0) | 2008/03/06 |
| JavaScript Obejct 형식의 데이터를 덤프하여 내용 보기 (0) | 2008/02/12 |
| innerHTML 을 사용할 때 속도를 위한 주의사항 (2) | 2008/02/01 |
드래그 드랍 이벤트에 따라 개체에 데이터를 담아 처리할수 있는 DHTML 예제입니다.
쇼핑몰의 쇼핑카트 등에 이용할 방향이 크네요.
소스 내용은 직접 위 링크를 참조하셔서 확인해 주셔야 할 것 같습니다.
'Web > JavaScript' 카테고리의 다른 글
| DHTML을 빠르게 하는 12가지 튜닝 (0) | 2008/07/14 |
|---|---|
| 다양한 HTML 소스복사 / 마우스 우클릭 방지 모음 (2) | 2008/05/23 |
| 드래그 드랍(Drag and Drop) 으로 개체의 정보 다루기 (0) | 2008/03/06 |
| JavaScript Obejct 형식의 데이터를 덤프하여 내용 보기 (0) | 2008/02/12 |
| innerHTML 을 사용할 때 속도를 위한 주의사항 (2) | 2008/02/01 |
| Yahoo Map API (1) | 2008/01/15 |
Prev




