 function preventSelection(element){
  var preventSelection = false;

  function addHandler(element, event, handler){
    if (element.attachEvent)
      element.attachEvent('on' + event, handler);
    else
      if (element.addEventListener)
        element.addEventListener(event, handler, false);
  }
  function removeSelection(){
    if (window.getSelection) { window.getSelection().removeAllRanges(); }
    else if (document.selection && document.selection.clear)
      document.selection.clear();
  }
  function killCtrlA(event){
    var event = event || window.event;
    var sender = event.target || event.srcElement;

    if (sender.tagName.match(/INPUT|TEXTAREA/i))
      return;

    var key = event.keyCode || event.which;
    if (event.ctrlKey && key == 'A'.charCodeAt(0))  // 'A'.charCodeAt(0) можно заменить на 65
    {
      removeSelection();

      if (event.preventDefault)
        event.preventDefault();
      else
        event.returnValue = false;
    }
  }

  // не даем выделять текст мышкой
  addHandler(element, 'mousemove', function(){
    if(preventSelection)
      removeSelection();
  });
  addHandler(element, 'mousedown', function(event){
    var event = event || window.event;
    var sender = event.target || event.srcElement;
    preventSelection = !sender.tagName.match(/INPUT|TEXTAREA/i);
  });

  // борем dblclick
  // если вешать функцию не на событие dblclick, можно избежать
  // временное выделение текста в некоторых браузерах
  addHandler(element, 'mouseup', function(){
    if (preventSelection)
      removeSelection();
    preventSelection = false;
  });

  // борем ctrl+A
  // скорей всего это и не надо, к тому же есть подозрение
  // что в случае все же такой необходимости функцию нужно
  // вешать один раз и на document, а не на элемент
  addHandler(element, 'keydown', killCtrlA);
  addHandler(element, 'keyup', killCtrlA);
}


document.ondragstart = test;
document.onselectstart = test;
document.oncontextmenu = test;
function test() {
return false
}

function showtip (v,myEvent) {

                        if (document.getElementById([v])) {
                             // alert(Event);
                                var sw = document.body.clientWidth;

                                var sh = document.body.clientHeight;

                                var dw = document.getElementById([v]).clientWidth;

                                var dh = document.getElementById([v]).clientHeight;



                              var cx = myEvent.clientX;

                             var cy   = myEvent.clientY;

                                if (sw < cx+dw+20) cx=sw-dw-20;

                                if (sh < cy+dh+20) cy=sh-dh-20;

//                                document.all[v].style.top=cy+document.body.scrollTop+15;
  //                              document.all[v].style.left=cx+document.body.scrollLeft+10;

                              //  document.all[v].style.visibility='visible';
                              //  document.all[v].style.display='inline';

                                document.getElementById([v]).style.top=screen.height/3-100;
                                document.getElementById([v]).style.left=screen.width/3-60;

                               document.getElementById([v]).style.display='inline';

                               document.getElementById([v]).style.visibility = "visible";
                        }

                }

                function hidetip (v) {

                        if (document.getElementById([v])) {

                                document.getElementById([v]).style.visibility='hidden';

                        }

                }

                function tvirch (url) {

                        w = screen.width*0.6; h = screen.height-100;

                        t = (screen.height-h)/3; l = screen.width-w-32;

                        wd = window.open (url, 'tvirch', 'location=no,scrollbars=yes,status=no,menubar=no,resizable=yes,top='+t+',left='+l+',width='+w+',height=100');

                        wd.resizeTo(w+12,100);

                        for (i=0; i<h-100; i+=10) wd.resizeBy(0,10);

                        wd.focus();

                        return false;

                }