Загнать "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, время: 08:58. |