달력

3

« 2019/3 »

  •  
  •  
  •  
  •  
  •  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  •  
  •  
  •  
  •  
  •  
  •  
function twitter(url,msg) {
 var href = "http://twitter.com/home?status=" + encodeURIComponent(msg) + " " + encodeURIComponent(url);
 var a = window.open(href, 'twitter', '');
 if ( a ) {
  a.focus();
 }
 return false;
}

function facebook(url,msg) {
 var href = "http://www.facebook.com/sharer.php?u=" + url + "&t=" + encodeURIComponent(msg);
 var a = window.open(href, 'facebook', '');
 if ( a ) {
  a.focus();
 }
  return false;
}

function me2day(url,msg){
    var href = "http://me2day.net/posts/new?new_post[body]=" + url + "&new_post[tags]" + encodeURIComponent(msg);
    var a = window.open(href, 'Me2Day', '');
    if ( a ) {
     a.focus();
    }
     return false;
 }


호출 방법은 아래와 같다.

<a href="#twitter" onclick="return twitter(location.href, '제목');" alt="트위터에 글쓰기">트위터</a>


url은 사이트의 주소를 넣어주고, msg 에는 글에 추가될 제목등을 넣어준다.
Posted by 에드몽단테스
2011.04.08 14:25

배너 스크립트 개발2011.04.08 14:25

<script type="text/javascript">
var bPOut = '', bIndex = 0, bPSpeed = 5000;
var bPList = new Array();

bPList.push(['popup0330.jpg', '/not_0102000000.jsp?type=view&b_idx=12466', '', '부설연구소장초빙']);
bPList.push(['sosicpopup.jpg', '/web/web_0104000000.jsp', '', '소식지 신청']);
bPList.push(['popup0324.jpg', ' /kem_home/info/news/notice/kem_view.asp?q=16528', '_blank', '에너지절약 아이디어 공모전']);
bPList.push(['popup1115.jpg', ' /not/not_0102000000.jsp?type=view&b_idx=12258', '', '상용화 현장연구 지원 안내']);

/**
 * 선택한 배너 표시
 */
function selectBannerPopup(index){
    var banner = document.getElementById('pBanner');
    banner.src = '/images/'+bPList[index][0];
    banner.alt = bPList[index][3];
    banner.parentNode.setAttribute('href', bPList[index][1]);
    if(bPList[index][2] != ''){
        banner.parentNode.setAttribute('target', bPList[index][2]);
    }
    else{
        banner.parentNode.setAttribute('target', '');
    }

    changeBannerDisplay(index);
    return false;
}

/**
 * 배너위치가 (자동으로) 바뀌면 배너 디스플레이의 모양을 바꿔준다.
 * @param index
 * @return
 */
function changeBannerDisplay(index){
    for(var i=0; i<bPList.length;i++){
        document.getElementById('pbindex'+(i+1)).src = '/images/'+(i+1)+'_off.gif';
    }
    document.getElementById('pbindex'+(index+1)).src = '/images/'+(index+1)+'_on.gif';
}

/**
 * 일정시간 후에 팝업배너의 이미지를 변경시킨다.
 */
function intervalBPopup(){
    selectBannerPopup(bIndex++);
    if(bIndex == bPList.length)
        bIndex = 0;
    bPOut = setTimeout("intervalBPopup()",bPSpeed);
}

/**
 * 배너 위치로 이동할 수 있는 영역을 디스플레이
 * @return
 */
function makePopupBannerIndex(){
    var src = '';
    for(var i=0; i<bPList.length;i++){
        if(i == 0){
            src += '<a href="#" onclick="return selectBannerPopup('+i+');"><img src="/images/1_on.gif" alt="1" id="pbindex'+(i+1)+'" /></a>&nbsp;';
        }
        else{
            src += '<a href="#" onclick="return selectBannerPopup('+i+');"><img src="/images/'+(i+1)+'_off.gif" alt="'+(i+1)+'" id="pbindex'+(i+1)+'" /></a>&nbsp;';
        }
    }
    var area = document.getElementById('popup_banner_display_area');
   
    area.innerHTML = src;
}
</script>


<div style="position:relative;">
    <div style="position:absolute;height:20px;top:3px;right:5px;" id="popup_banner_display_area"></div>
    <a href="#popup"><img id="pBanner" src="/images/main_img/popup0330.jpg" style="padding-left:3px;" alt="부설연구소장초빙" /></a>
</div>

<script type="text/javascript">
// 팝업배너 시작
makePopupBannerIndex();
bPOut = setTimeout("intervalBPopup()", 0);
</script>

Posted by 에드몽단테스
2011.04.01 10:23

뉴스기사 스크롤 자바스크립트 개발2011.04.01 10:23

<ul id="stoc" style="border:1px solid green;height:180px;">
    <li>aaaaaaaaaaaaaaaa</li>
    <li>bbbbbbbbbbbbbbbb</li>
    <li>cccccccccccccccc</li>
    <li>dddddddddddddddd</li>
    <li>eeeeeeeeeeeeeeee</li>
    <li>fffffffffffffffffffffffffffffffffffff</li>
</ul>


<script type="text/javascript">
function textScroll(scroll_el_id){
    this.objElement = document.getElementById(scroll_el_id);
    this.objElement.style.position = 'relative';
    this.objElement.style.overflow = 'hidden';

    this.objLi = this.objElement.getElementsByTagName('li');
    this.height = 30;
    this.num = this.objLi.length;
    this.totalHeight = this.height * this.num;
    this.scrollspeed = 2;
    this.objTop = new Array();
    this.timer = null;

    for(var i=0; i<this.num; i++){
        this.objLi[i].style.position = 'absolute';
        this.objTop[i] = this.height * i;
        this.objLi[i].style.top = this.objTop[i]+'px';
    }
}

textScroll.prototype.move = function(){
    for(var i=0; i<this.num; i++){
        this.objTop[i] = this.objTop[i] - this.scrollspeed;
        this.objLi[i].style.top = this.objTop[i]+'px';
    }
    if(this.objTop[0] % this.height == 0){
        this.jump();
    }
    else{
        clearTimeout(this.timer);
        this.timer = setTimeout(this.name+".move()", 50);
    }
}

textScroll.prototype.jump = function(){
    for(var i=0; i<this.num; i++){
        if(this.objTop[i] == this.height*(-1)){
            this.objTop[i] = this.objTop[i] + this.totalHeight;
            this.objLi[i].style.top = this.objTop[i]+'px';
        }
    }
    clearTimeout(this.timer);
    this.timer = setTimeout(this.name+".move()", 2000);
}

textScroll.prototype.start = function(){
    this.timer = setTimeout(this.name+".move()", 3000);
}
var real_search_keyword = new textScroll('stoc');
real_search_keyword.name = "real_search_keyword";
real_search_keyword.start();
</script>


Posted by 에드몽단테스
2010.06.02 13:43

클래스 이름을 사용하여 요소찾기 개발2010.06.02 13:43

html 에서 아이디 또는 태그이름으로 구성 요소를 찾을 수 있다.

getElementById();
getElementsByTagName();

그러면 클래스 이름으로 요소를 찾을 수 있지 않을까?

검색해보니 getElementsByTagName() 함수가 존재한다.
그런데 파이어폭스 3.6에서는 잘 되지만 IE7.0에서는 이 함수가 존재하지 않는다. (혹시 다른 이름으로 존재할지 모르지)
그래서 사용자 정의 함수로 만들어 보자.

function getElementsByClass(searchClass, node, tag) {
 var classElements = new Array();
  if ( node == null ) node = document;
  if ( tag == null ) tag = '*';
  var els = node.getElementsByTagName(tag);
  var elsLen = els.length;
  var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
  for (i=0, j=0; i<elsLen; i++) {
   if ( pattern.test(els[i].className))
     classElements[j++] = els[i];
  }
  return classElements;
}


Posted by 에드몽단테스