Загнать "area" в document.createElement('map')?
Создаю
var imageMap = new Ext.Element(document.createElement('map'));
потом хочу вставить туда координаты разные, но что-то они туда не вставляются... :(
imageMap.insertHtml('afterBegin', '<area shape="rect" coords="378,39,463,116" href="#">');
Почему? Что не так? Пасиб. |
JDev,
Не наю - обычно вставлял сразу map вместе с area в какой нибудь div главное чтобы он шел после картинки для для мап карты в HTML коде |
Цитата:
|
Вся фишка в том, что если вот такой фрагмент
Ext.get('target').set({usemap:'#plot_state_map'});
и потом явно в html прописано <body> <div id="#puk"> <map name="plot_state_map"> <!-- ImageReady Slices (shapes.jpg) --> <area shape="rect" coords="378,39,463,116" href="#"> <area shape="poly" coords="286,34, 298,42, 308,54, 314,79, 307,103, 292,118, 270,125, 242,122, 227,112, 216,97, 212,73, 219,53, 227,43, 240,34, 264,29" href="#"> <!-- End circles --> </map> </div> </body>- то map определяется. Если же
Ext.get('target').set({usemap:'#plot_state_map'});
var imageMap = new Ext.Element(document.createElement('div'));
imageMap.insertHtml('<map name="plot_state_map"><area shape="rect" coords="378,39,463,116" href="#"><area shape="poly" coords="286,34, 298,42, 308,54, 314,79, 307,103, 292,118, 270,125, 242,122, 227,112, 216,97, 212,73, 219,53, 227,43, 240,34, 264,29" href="#"></map>');
и <body> </body> пустой боди - то ни в какую, в чем глюк? Спасибо!! |
Не наю на jQuery нормально вставляет
<script type="text/javascript" src="http://yandex.st/jquery/1.4.4/jquery.min.js"></script>
<body>
<script type="text/javascript">
var a='<img src="http://s019.radikal.ru/i634/1203/fe/1764114b61dd.jpg" width="563" height="600" border="0" usemap="#toon">\
<map name="toon">\
<area shape="rect" coords="12,13,188,51" href="http://ichliebehetalia.anihub.ru/viewtopic.php?id=3" target="_blank">\
<area shape="rect" coords="399,15,555,47" href="http://ichliebehetalia.anihub.ru/viewtopic.php?id=5" target="_blank">\
<area shape="rect" coords="405,56,553,93" href="http://ichliebehetalia.anihub.ru/viewtopic.php?id=2" target="_blank">\
<area shape="rect" coords="9,440,331,474" href="http://ichliebehetalia.anihub.ru/viewtopic.php?id=4" target="_blank">\
<area shape="rect" coords="11,478,235,512" href="http://ichliebehetalia.anihub.ru/viewtopic.php?id=6" target="_blank">\
</map>'
$("body").append(a)
</script>
</body>
|
Вы наверное не поняли вопрос.
мне нужно динамически создавать элемент. Ок, тогда как это сделать динамически с помощью jQuery |
Цитата:
Мон сделать для удобства её массивом и заменять элементы массива
<script type="text/javascript" src="http://yandex.st/jquery/1.4.4/jquery.min.js"></script>
<body>
<script type="text/javascript">
var a=[];
a[0]='<img src="http://s019.radikal.ru/i634/1203/fe/1764114b61dd.jpg" width="563" height="600" border="0" usemap="#toon">\
<map name="toon">';
a[1]='<area shape="rect" coords="12,13,188,51" href="http://ichliebehetalia.anihub.ru/viewtopic.php?id=3" target="_blank">';
a[2]='<area shape="rect" coords="399,15,555,47" href="http://ichliebehetalia.anihub.ru/viewtopic.php?id=5" target="_blank">';
a[3]='<area shape="rect" coords="405,56,553,93" href="http://ichliebehetalia.anihub.ru/viewtopic.php?id=2" target="_blank">';
a[4]='<area shape="rect" coords="9,440,331,474" href="http://ichliebehetalia.anihub.ru/viewtopic.php?id=4" target="_blank">';
a[5]='<area shape="rect" coords="11,478,235,512" href="http://ichliebehetalia.anihub.ru/viewtopic.php?id=6" target="_blank">';
b='</map>';
$("body").append(a[0]+b)
for(var i=1; i<a.length; i++){
$("body map[name='toon']").append(a[i])
}
</script>
</body>
вот вместо цикла функцию и свои данные |
:( Это ппц какой-то.
Делаю вот так.
var imageMap = $(document.createElement('div'));
$(imageMap).append('<map name="plot_state_map"><area shape="rect" coords="378,39,463,116" href="#"><area shape="poly" coords="286,34, 298,42, 308,54, 314,79, 307,103, 292,118, 270,125, 242,122, 227,112, 216,97, 212,73, 219,53, 227,43, 240,34, 264,29" href="#"></map>');
дебаггером смотрю - елемент создается, а append не срабатывает. :(:( |
О чудо, вот так сработало!
$('body').append('<map name="plot_state_map"><area shape="rect" coords="378,39,463,116" href="#"><area shape="poly" coords="286,34, 298,42, 308,54, 314,79, 307,103, 292,118, 270,125, 242,122, 227,112, 216,97, 212,73, 219,53, 227,43, 240,34, 264,29" href="#"></map>');
а почему не работает так как делал я? |
JDev,
если Вы пытались делать на jQuery там нет такого варианта $(imageMap) - посколь либо тег либо класс либо id - все в кавычках вид селектора как и в css imageMap переменная непонятно откель создавать элементы вроде тоже не надо сразу $('body').append('<div id=MyMap></div>') $('#MyMap').append("чот - там") |
| Часовой пояс GMT +3, время: 12:35. |