якори хтмл и динам. смена
Якори в html
проблема в том, что якори перестают работать если та область не активна.. http://rot.whitecrows.ru/item - вот сама страница.
<div class="wq_tag"> <span class="on" id="wq_tag1" onmousemove="this.className='on';document.getElementById('wq_tag2').className='none';document.getElementById('wq_tag3').className='none';document.getElementById('wq_tag4').className='none';document.getElementById('wq_tag5').className='none';document.getElementById('wq_list1').style.display='block';document.getElementById('wq_list2').style.display='none';document.getElementById('wq_list3').style.display='none';document.getElementById('wq_list4').style.display='none';document.getElementById('wq_list5').style.display='none';">оружие</span> <span id="wq_tag2" onmousemove="this.className='on';document.getElementById('wq_tag1').className='none';document.getElementById('wq_tag3').className='none';document.getElementById('wq_tag4').className='none';document.getElementById('wq_tag5').className='none';document.getElementById('wq_list2').style.display='block';document.getElementById('wq_list1').style.display='none';document.getElementById('wq_list3').style.display='none';document.getElementById('wq_list4').style.display='none';document.getElementById('wq_list5').style.display='none';">броня</span> <span id="wq_tag3" onmousemove="this.className='on';document.getElementById('wq_tag2').className='none';document.getElementById('wq_tag1').className='none';document.getElementById('wq_tag4').className='none';document.getElementById('wq_tag5').className='none';document.getElementById('wq_list3').style.display='block';document.getElementById('wq_list2').style.display='none';document.getElementById('wq_list1').style.display='none';document.getElementById('wq_list4').style.display='none';document.getElementById('wq_list5').style.display='none';">ботинки</span> <span id="wq_tag4" onmousemove="this.className='on';document.getElementById('wq_tag2').className='none';document.getElementById('wq_tag3').className='none';document.getElementById('wq_tag1').className='none';document.getElementById('wq_tag5').className='none';document.getElementById('wq_list4').style.display='block';document.getElementById('wq_list2').style.display='none';document.getElementById('wq_list3').style.display='none';document.getElementById('wq_list1').style.display='none';document.getElementById('wq_list5').style.display='none';">поддержка</span> <span id="wq_tag5" onmousemove="this.className='on';document.getElementById('wq_tag2').className='none';document.getElementById('wq_tag3').className='none';document.getElementById('wq_tag1').className='none';document.getElementById('wq_tag4').className='none';document.getElementById('wq_list5').style.display='block';document.getElementById('wq_list2').style.display='none';document.getElementById('wq_list3').style.display='none';document.getElementById('wq_list4').style.display='none';document.getElementById('wq_list1').style.display='none';">расходные</span> </div>
вот кусок кода отвечающий за смену как заставить чтобы якорь заставлял активировать нужный лист? |
FeaR51,
Ой - перепишите скрипт вызовом функций - ну не айс тупо разглядывать теги по полкилометра Типо таво:
<span class="on" id="wq_tag1" data="Parametr1,Parametr2.и тд." onmousemove="callFunc(this)">оружие</span>
<span class="on" id="wq_tag1" data="Parametr3,Parametr4.и тд." onmousemove="callFunc(this)">оружие</span>
<script>
function callFunc(a) {
//Тут что- то считывающее параметры из атрибута data и выполняюшее нужные деяния
}
</script>
|
та скрипт не мой я с китая граббером вытянул
http://www.tianyijue.com/tyj/hero_list.html сейчас перевожу и адаптирую... первоначальный код лучше не смотреть :< |
та и вообще я пример только кинул, что прописать в якоре, чтобы он активировал нужный лист
|
FeaR51,
Пробуйте пояснить более доступно и с минимальным примером - для якоря достаточно одной ссылки или элемента с id (смысл в демо остального контента ? |
если нужный якорь находится в скрытом листе, он не показывается, нужно чтобы он еще автоматом показывал нужный лист.
|
FeaR51,
оберните cкрытый блок еще одним div и в нем проставьте id - вот по якорю данного id и будет переходить а по событию скролл считываете hash и открываете нужный дочерний узел следующий за якорем |
а можно сделать 2ух ступенчатые якори? типо #лист1#предмет1
|
просто якорей будет много и делать всего под один предмет ид не то.
|
FeaR51,
Суньте под первую обертку несколько подякорей <label id="подкатегория_1"></label> <label id="подкатегория_2"></label> <label id="подкатегория_3"></label> Единственное - каждая подкатегория должна обладать уникальным id( в отличие от списка лист ( и по скроллу анализируйте - далее находим родителя и открываем дочерний div |
Цитата:
|
FeaR51,
Я так пока и не понял в ясности(* из-за обилия) кода задачи - мну просил Выложить сокращенку! |
ну смотри у меня листы = категории, их всего 5.
в каждой категорие свои предметы. нужно чтобы якорь задействовал нужную категорию, то есть показывал нужную категорию при переходе по нему. |
FeaR51,
Выложите нормальный минималистический HTML код для двух категорий Или посмотрите это => http://javascript.ru/forum/dom-windo...tml#post182559 сообщение 21 |
там древовидный, у меня ведь 5 листов которые переключаеются через display: block, либо none.
код я не смогу сделать минимальный) он не мой китая ведь, да и не сильно в этой части еще шарю, только учусь. |
FeaR51,
Цитата:
Цитата:
Тогда это не ко мне ( я не нянька - горшки подставлять |
Цитата:
да и наврядле мой заработает :cray: |
FeaR51,
Не скрипты - нужно необходимое HTML (достаточно заголовков ) Навороты внутри тегов - не нужны вовсе |
ааа
|
<div id="wq_list1">//первый лист
<table width="800" cellpadding="0" cellspacing="0" class="wq_list" border="1" bordercolor="#49FF00">
<tr>
<td class="wq_img"><img src="upload/item/кровавая длань.jpg" height="88" width="88" /><br />
кровавая длань</td>
</td>
</tr>
</table>
</div>
<div id="wq_list2" style="display:none;">//лист 2
<table width="800" cellpadding="0" cellspacing="0" class="wq_list" border="1" bordercolor="#49FF00">
<tr>
<td class="wq_img"><img src="upload/item/шелковый плащ.jpg" height="88" width="88" /><br />
шелковый плащ</td>
</tr>
</table>
</div>
это нет:? |
FeaR51,
Опишите какие категории скрыты и по какому условию - раскрываются ? И отметьте - (*на втором дубле ) где контент, который скрыт к примеру Тут контент |
<div id="wq_list1">//первый лист
Тут контент </div> <div id="wq_list2" style="display:none;">//лист 2 Тут контент </div> Скрыты они по условиям скрипта в первом посте, display=none, при наведение мышкой на определенный лист (оружие,броня и тд) меняются опции дисплея для каждого листа. |
|
|
просто изменил картинки, раньше по папкам были, но в связи с тем, что надо было перепечатать ~500 картинок руками (чертов китай у них каждая картинка идет файлом! даже если повторяется) решил в общую кинуть.
|
FeaR51,
Вопрос - на что наводим то курсором, чтобы раскрывалось ? ( Листы то скрыты - должна быть не скрытая иконка |
Цитата:
|
FeaR51,
Как на него навести - коль оно скрыто ? Лан ща подумаю |
то, что скинул оно не скрыто это просто указание для листов, при наведение на данную надпись.
|
FeaR51,
Вопрос - а при наведении на второй лист = с первым -что делается ? |
у первого становится display=none
у второго display=block |
FeaR51,
:write: На JQ
<script type="text/javascript" src="http://yandex.st/jquery/1.4.4/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('div.wrap').mouseenter(function(){
$('div.wrap').not(this).find('div[id^="wq_list"]').hide('slow')
$(this).find('div[id^="wq_list"]').show('slow')
}).mouseleave(function(){
});
});
</script>
<style type="text/css">
.wrap div[id^="wq_list"] {
width:800!important;
}
</style>
<div class="wrap">
<h2>кровавая длань</h2>
<div id="wq_list1">
<table width="800" cellpadding="0" cellspacing="0" class="wq_list" border="1" bordercolor="#49FF00">
<tr>
<td class="wq_img">//первый лист<br />
<img src="http://rot.whitecrows.ru/upload/кровавая%20длань.jpg" height="88" width="88" /><br />
</td>
</tr>
</table>
</div>
</div>
<div class="wrap">
<h2>шелковый плащ</h2>
<div id="wq_list2" style="display:none;">
<table width="800" cellpadding="0" cellspacing="0" class="wq_list" border="1" bordercolor="#49FF00">
<tr>
<td class="wq_img">//лист 2<br />
<img src="http://rot.whitecrows.ru/upload/кровавая%20длань.jpg" height="88" width="88" /><br />
</td>
</tr>
</table>
</div>
</div>
<div class="wrap">
<h2>полосатая кепка</h2>
<div id="wq_list3" style="display:none;">
<table width="800" cellpadding="0" cellspacing="0" class="wq_list" border="1" bordercolor="#49FF00">
<tr>
<td class="wq_img">//лист 3<br />
<img src="http://rot.whitecrows.ru/upload/кровавая%20длань.jpg" height="88" width="88" /><br />
</td>
</tr>
</table>
</div>
</div>
Скрипты и стиль в хидер (или вверх страницы... хотя и в самом низу будут работать |
<div class="wrap"> - это перед листом пхать или перед предметом?
просто предмет в листе -_- |
Цитата:
Всё, что внутри синего - сворачиваецо |
во спасибо работает, поставил бы плюс, но мне нельзя вроде и тд.. могу
немного на яндекс скинуть в знак благодарности ![]() |
<div class="wrap"><span id="wq_tag1"><h2>оружие</h2></span> <span id="wq_tag2"><h2>броня</h2></span> <span id="wq_tag3"><h2>ботинки</h2></span> <span id="wq_tag4"><h2>поддержка</h2></span> <span id="wq_tag5"><h2>расходные</h2></span></div> что попровить, чтобы работали через id? |
Цитата:
Ваше кликабельная надпись - сирененвым Цитата:
сиреневое и черное - как душе угодно - главное - соблюдаем парность тегов // И не пишите всё в строчку - разделяйте - лучше пожертвовать парой пробелов и переводов строк - чем разбираться в каше |
у тебя надо взять код и обернуть полностью лист.
у меня реализовано меню отдельно от листов и оно выводит нужный лист через id. как мне ваш так реализовать? |
<div class="wq_tag">
<span class="on" id="wq_tag1">оружие</span>
<span id="wq_tag2">броня</span>
<span id="wq_tag3">ботинки</span>
<span id="wq_tag4">поддержка</span>
<span id="wq_tag5">расходные</span></div>
<div id="wq_list1">
лист 1
</div>
<div id="wq_list2" style="display:none;">
лист 2
</div>
вот например |
Цитата:
Ждите |
| Часовой пояс GMT +3, время: 12:25. |