Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема с ссылкой 
:(
    Опции темы
letsad
Дата 9.12.2008, 17:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 9.12.2008

Репутация: нет
Всего: нет



Помогите, не получается поставить ссылку в меню.
Я пишу так:
Код

treeItems['item6702'] = new treeItem('item6702', 'item667', false, 'наше агенство', 'http://www.diplomattour.ru/company.html');


Вот код:

Код

opera = (navigator.userAgent.indexOf('Opera') >= 0)? true : false;
ie = (document.all && !opera)? true : false;
dom = (document.getElementById)? true : false;

function putElem(elemId,displayValue) {
    if (displayValue) document.getElementById(elemId).style.display = (ie)? "block" : displayValue;
        else document.getElementById(elemId).style.display = "block";
}

function removeElem(elemId) {
    document.getElementById(elemId).style.display = "none";
}
function visibleAdd(main, where, sub) {
    var resArr = new Array();
    for (i in main) {
        resArr[resArr.length] = main[i];
        if (main[i] == where) for (j in sub) resArr[resArr.length] = sub[j];
    }
    return resArr;
}
function visibleRemove(main, sub) {
    for (i in main) for (j in sub) if (main[i] == sub[j]) delete main[i];
    return main;
}

function isItemVisible(itemId) {
    for (var v in visible) {
        if (visible[v] == itemId) return true;
    }
    return false;
}
function visibleChildren(id) {
    var vChildren = new Array();
    if (treeItems[id].children.length > 0) {
        var j = 0;
        for (j in treeItems[id].children) {
            vChildren[vChildren.length] = treeItems[id].children[j];
            if (treeItems[treeItems[id].children[j]].children.length > 0 && treeItems[treeItems[id].children[j]].isOpen) {
                vChildren = vChildren.concat(visibleChildren(treeItems[id].children[j]));
            }
        }
    }
    return vChildren;
}
function changeTree(which) {
    var changingElems = visibleChildren(which);
    if (treeItems[which].isOpen) {
        visible = visibleRemove(visible,changingElems);
        for (i in changingElems) removeElem(changingElems[i]);
        treeItems[which].isOpen = false;
    } else {
        visible = visibleAdd(visible,which,changingElems);
        for (i in changingElems) putElem(changingElems[i],"table-row");
        treeItems[which].isOpen = true;
    }
}
/*  */

function treeItem(id,parent,isOpen, text,link) {
    this.id = id;
    this.parent = parent;
    this.children = new Array();
    if (parent != '') {
        treeItems[parent].children[treeItems[parent].children.length] = id;
        this.level = treeItems[parent].level + 1;
    } else this.level = 0;
    this.isOpen = isOpen;
    this.text = text;
    return this;
}

treeItems = new Array();
treeItems['item666'] = new treeItem('item666', '', true, 'Главная', 'http://www.diplomattour.ru/index.html');
treeItems['item667'] = new treeItem('item667', 'item666', false, 'О компании', '');
treeItems['item6702'] = new treeItem('item6702', 'item667', false, 'наше агенство', 'http://www.diplomattour.ru/company.html');
treeItems['item6703'] = new treeItem('item6703', 'item667', false, 'сотрудничество', 'http://www.diplomattour.ru/sotrudnichestvo.html');
treeItems['item6704'] = new treeItem('item6704', 'item667', false, 'контакты', 'http://www.diplomattour.ru/contact.html');

treeItems['item668'] = new treeItem('item668', 'item666', false, 'Авиабилеты', '');
treeItems['item6802'] = new treeItem('item6802', 'item668', false, 'поиск авиабилетов', 'http://www.diplomattour.ru/poisk_avia.html');
treeItems['item6803'] = new treeItem('item6803', 'item668', false, 'авиакомпании', 'http://www.diplomattour.ru/aviocompany.html');
treeItems['item6804'] = new treeItem('item6804', 'item668', false, 'аэропорты', 'http://www.diplomattour.ru/aeroporti.html');

treeItems['item669'] = new treeItem('item669', 'item666', false, 'Ж/д билеты', '');
treeItems['item6902'] = new treeItem('item6902', 'item669', false, 'поиск ж/д билетов', 'http://www.diplomattour.ru/poisk_jd.html');
treeItems['item6903'] = new treeItem('item6903', 'item669', false, 'ж/д вокзалы', 'http://www.diplomattour.ru/jd_vokzali.html');
treeItems['item6904'] = new treeItem('item6904', 'item669', false, 'информация', 'http://www.diplomattour.ru/jd_info.html');

treeItems['item670'] = new treeItem('item670', 'item666', false, 'Гостиницы', '');
treeItems['item7002'] = new treeItem('item7002', 'item670', false, 'России и стран СНГ', 'http://www.diplomattour.ru/poisk_gr.html');
treeItems['item7003'] = new treeItem('item7003', 'item670', false, 'за рубежом', 'http://www.diplomattour.ru/poisk_gz.html');


treeItems['item671'] = new treeItem('item671', 'item666', false, 'Туры и круизы', '');
treeItems['item7101'] = new treeItem('item7101', 'item671', false, 'пляжный отдых', 'http://www.diplomattour.ru/');
treeItems['item7102'] = new treeItem('item7102', 'item671', false, 'экскурсионный отдых', 'http://www.diplomattour.ru/');
treeItems['item7103'] = new treeItem('item7103', 'item671', false, 'комбинированные туры', 'http://www.diplomattour.ru/');
treeItems['item7104'] = new treeItem('item7104', 'item671', false, 'морские круизы', 'http://www.diplomattour.ru/');
treeItems['item7105'] = new treeItem('item7105', 'item671', false, 'речные круизы', 'http://www.diplomattour.ru/');


treeItems['item672'] = new treeItem('item672', 'item666', false, 'Визовая поддержка', '');
treeItems['item7201'] = new treeItem('item7201', 'item672', false, 'для граждан РФ', 'http://www.diplomattour.ru/vizi_rosg.html');
treeItems['item7202'] = new treeItem('item7202', 'item672', false, 'для иностранных граждан', 'http://www.diplomattour.ru/vizi_ing.html');


treeItems['item673'] = new treeItem('item673', 'item666', false, 'Страхование', '');
treeItems['item7301'] = new treeItem('item7301', 'item673', false, 'для граждан РФ', 'http://www.diplomattour.ru/straxovanie_gr.html');
treeItems['item7302'] = new treeItem('item7302', 'item673', false, 'для иностранных граждан', 'http://www.diplomattour.ru/straxovanie_ig.html');

treeItems['item674'] = new treeItem('item674', 'item666', false, 'VIP-услуги', 'http://www.diplomattour.ru/vip_zal.html');
treeItems['item675'] = new treeItem('item675', 'item666', false, 'Трансферы', 'http://www.diplomattour.ru/transpher.html');
visible = new Array();
for (var i in treeItems) {
    if (treeItems[i].level == 0) {
        visible[visible.length] = treeItems[i].id;
        if (treeItems[i].isOpen) visible = visible.concat(visibleChildren(treeItems[i].id));
    }
}


Код


.treeCellL1    { padding-left: 0px; padding-right: 5px; }
.treeCellL2    { padding-left: 20px; padding-right: 5px; }
.treeCellL3    { padding-left: 40px; padding-right: 5px; }
.treeText {
    font-size: smaller;
    font-family: arial, arial cyr, sans serif;
    padding: 1px 3px 1px 3px;
    border-width: 1px;
    border-style: none;
    border-color: none;
    cursor: default;
    white-space: nowrap;
}
.treeTextHover {
    font-size: 12px;
    font-family: arial, arial cyr, sans serif;
    background-color: #ccc;
    padding: 0px 2px 0px 2px;
    border-width: 1px;
    border-style: solid;
    border-color: #999;
    cursor: 'pointer';
    white-space: nowrap;
}
.treeTextSelected {
    font-size: 12px;
    font-family: arial, arial cyr, sans serif;
    padding: 0px 2px 0px 2px;
    background-color: #deedff;
    border-width: 1px;
    border-style: solid;
    border-color: #999;
    margin-right: 5px;
    cursor: 'default';
    white-space: nowrap;
}

Код


function mOverTreeText(e) {
    if (ie) event.toElement.className = 'treeTextHover';
        else if (dom) e.currentTarget.className = 'treeTextHover';
        //alert('in: '+e.currentTarget.id)
}

function mOutTreeText(e) {
    if (ie) event.fromElement.className = 'treeText';
        else if (dom) e.currentTarget.className = 'treeText';
        //alert('out: '+e.currentTarget.id)
}

colImg = new Image();
colImg.src = 'collapse.gif';
expImg = new Image();
expImg.src = 'expand.gif';

function changeTreeState(e) {
    if (ie) var imgClicked = event.srcElement;
        else if (dom) var imgClicked = e.currentTarget;
    imgClicked.src = (treeItems[imgClicked.id.substr(5)].isOpen)? colImg.src : expImg.src;
    if (imgClicked) changeTree(imgClicked.id.substr(5));
}

function buildTree(tableBody) { if (ie || (dom && !ie)) {
    parentTableBody = document.getElementById(tableBody);
    for (var i in treeItems) {
        // Создаем внешную трышку для пункта меню
        var newItem = document.createElement('tr');
        newItem.id = treeItems[i].id;
        
        // Создаем в трышке ячейку с правильными отступами.
        var theCell = document.createElement('td');
        theCell.bgColor = '#dfdfdf';
        theCell.setAttribute('nowrap','nowrap');

        // Сделаем табличку быстренько...
        var innerTable = document.createElement('table');
        innerTable.setAttribute('border',0);
        innerTable.setAttribute('cellPadding',0);
        innerTable.setAttribute('cellSpacing',0);
        
        innerBody = document.createElement('tbody');
        innerRow = document.createElement('tr');
        
        // Делаем ячейку для отступа
        var innerMarginCell = document.createElement('td');
        innerMarginCell.setAttribute('width',treeItems[i].level*20);
        innerMarginCell.setAttribute('nowrap','nowrap');
        innerRow.appendChild(innerMarginCell);
        
        // Делаем ячейку для картинки
        var innerSwitchCell = document.createElement('td');
        innerSwitchCell.setAttribute('width',16);
        innerSwitchCell.setAttribute('nowrap','nowrap');
        
        // A потом засовываем картинку
        var switchImg = document.createElement('img');
        
        // Выясняем какую именно картинку нужно вставить
        if (treeItems[i].children.length > 0)
            if (treeItems[i].isOpen) var leafPic = 'expand.gif';
                else var leafPic = 'collapse.gif';
            else var leafPic = 'leaf.gif';
        
        switchImg.setAttribute('src',leafPic);
        switchImg.setAttribute('width',16);
        switchImg.setAttribute('height',16);
        switchImg.setAttribute('border',0);
        switchImg.setAttribute('hspace',2);
        switchImg.setAttribute('align','top');
        switchImg.setAttribute('id','leaf_'+treeItems[i].id);
        switchImg.setAttribute('name','leaf_'+treeItems[i].id);
        if (treeItems[i].children.length > 0)
            if (ie) switchImg.onclick = changeTreeState;
                else if (dom) switchImg.addEventListener("click", changeTreeState, true);
        
        // Добавляем картинку к тъдышке и потом строке таблички
        innerSwitchCell.appendChild(switchImg);
        innerRow.appendChild(innerSwitchCell);


        // Делаем ячейку для текста
        var innerTextCell = document.createElement('td');
        innerTextCell.setAttribute('nowrap','nowrap');
        innerTextCell.setAttribute('height',16);
        innerTextCell.setAttribute('id','cell'+treeItems[i].id);
        
        innerTextCell.innerHTML = treeItems[i].text;

    //    var textItself = document.createTextNode(treeItems[i].text);
    //    innerTextCell.appendChild(textItself);
        innerTextCell.className = 'treeText';
        if (ie) {
            innerTextCell.onmouseover = mOverTreeText;
            innerTextCell.onmouseout = mOutTreeText;
        } else if (dom) {
            innerTextCell.style.cursor = 'pointer';
            innerTextCell.addEventListener("mouseover", mOverTreeText, true);
            innerTextCell.addEventListener("mouseout", mOutTreeText, true);
        }

        innerRow.appendChild(innerTextCell);
        innerBody.appendChild(innerRow);
        innerTable.appendChild(innerBody);
        theCell.appendChild(innerTable);
        newItem.appendChild(theCell);
        
        if (!isItemVisible(treeItems[i].id)) newItem.style.display = 'none';
        
        parentTableBody.appendChild(newItem);
    }
    for (i in treeItems) {
//        alert(newItem[i])

    }
}}


Код

</head>
<LINK href="styles.css" type=text/css rel=stylesheet>
<META http-equiv="Content-Type" content="text/html; charset=windows-1251">
<META name="description" content="" />
<META NAME="keywords" CONTENT="">
</head>
<body bgcolor="#ffffff" onLoad="buildTree('treeTableBody');">



M
Aliance

Пожалуйста, пользуйтесь кнопкой код!


Это сообщение отредактировал(а) Aliance - 9.12.2008, 17:56
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0623 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.