Как я могу ввести JavaScript (включая Prototype.js) в других сайтах, не создавая помехи глобальному пространству имен?

Что, если Вы имели <tbody> и <tfoot>?

, такие как:

<table>
    <tbody>
        <tr><td>Foo</td></tr>
    </tbody>
    <tfoot>
        <tr><td>footer information</td></tr>
    </tfoot>
</table>

Тогда это вставило бы Вашу новую строку в нижний колонтитул - не к телу.

Следовательно лучшее решение состоит в том, чтобы включать <tbody> тег и использование .append, а не .after.

$("#myTable > tbody").append("<tr><td>row content</td></tr>");
6
задан 7 revs, 2 users 100% 27 December 2011 в 17:46
поделиться

2 ответа

Если вы внедряете свой код на другие сайты, либо требуйте, чтобы они также включали прототип, либо вообще не используйте библиотеку.

На мой взгляд, можно использовать любой другой вариант. , слишком навязчиво.

2
ответ дан 17 December 2019 в 20:34
поделиться

Daniel,

я столкнулся с той же проблемой по тем же причинам. К счастью, я могу использовать jquery. Я хочу создать один js-файл, который будет загружать экземпляр jquery и все необходимые мне библиотеки. Затем я хочу загрузить css таким же образом.

Я нашел скрипт, который загружает эти файлы в DOM, но, похоже, он не работает. Вот что я использую:

function loadjscssfile(filename, filetype){
 if (filetype=="js"){ //if filename is a external JavaScript file
  var fileref=document.createElement('script')
  fileref.setAttribute("type","text/javascript")
  fileref.setAttribute("src", filename)
 }
 else if (filetype=="css"){ //if filename is an external CSS file
  var fileref=document.createElement("link")
  fileref.setAttribute("rel", "stylesheet")
  fileref.setAttribute("type", "text/css")
  fileref.setAttribute("href", filename)
 }
 if (typeof fileref!="undefined")
  document.getElementsByTagName("head")[0].appendChild(fileref)
}

В firebug я вижу, что css загружается, но содержимое моего css-файла не передается. Я надеялся, что смогу динамически загружать нужные мне библиотеки на основе инструментов, которые использует этот WIDGET. Поэтому я хотел бы сделать некоторую программную логику, которая бы определяла, какие библиотеки и css-файлы должны быть "импортированы".

Не уверен, что эта линия мышления играет роль в ваших попытках, но я бы хотел узнать ваши мысли или увидеть, к чему вы в итоге придете.

0
ответ дан 17 December 2019 в 20:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: