document.querySelectorAll()
выбирает все элементы с заданным именем класса и сохраняет их в массивоподобном объекте. Можно циклически перемещаться по объектам вместо того, чтобы обращаться к ним вручную.
var elements = document.querySelectorAll('.className');
for(var i = 0; i < elements.length; i++){
var str = elements[i].innerHTML;
elements[i].innerHTML = str.replace(":smile:", "<i class='em em-smile'></i>");
}
Вы также можете сделать то же самое, используя document.getElementsByClassName()
var elements = document.getElementsByClassName('.className');
for(var i = 0; i < elements.length; i++){
// Same like above...
}
До использования DLLs для различных версий не должно быть никакой проблемы. По крайней мере, не в Windows.
Это верно, если SDK использует повышение внутренне. Если SDK использует конструкции повышения в своем интерфейсе, например: это имеет функцию, которая возвращает повышение:: дополнительный, затем имея несколько версий может вызвать проблемы. Это могло все еще хорошо работать, зависящее от изменений между версиями, но это определенно будет риском. Я не знаю ни о каком хорошем решении в этом случае. Это также верно при включении заголовочного файла SDK, который включает заголовочный файл повышения.
Это - большая проблема. Сделайте поиск на аде DLL.
В основном DLL (или совместно использованный освобождает в Linux) загружается, но не все имена разрешены во время загрузки. То, что происходит, является отложенными вычислениями, таким образом, имена оценены на первом использовании. Проблема состоит в том, что, если 2 dll имеют то же имя затем местоположение, где имя разрешено к, зависит от, какой приказывает, чтобы DLL искался в (который зависит от порядка загрузки).
Если Вы статически свяжетесь затем, то у Вас не будет проблем с вызовами метода, поскольку Ваш будет все разрешен во время компиляции, и третье лицо будет разрешено во времени выполнения от DLL. Но что относительно структур, которые создаются повышением версии 1. Если Вы затем передаете их сторонней библиотеке, которая затем передает его повышению версии-x. Структуры размечаются таким же образом?
Это - очень хитрая область и когда проблемы происходят очень трудно для отлаживания. Поэтому попытайтесь использовать ту же версию.
Если Вы пишете функцию foo
, и экспортируйте его из F.dll и другой функции foo
экспортируемый из G.dll, Вы ожидали бы проблемы?
Когда AF.exe связан, компоновщику говорят: поместите некоторый код там, который загружает адрес функции foo
от F.dll. Теперь BG.dll связан для получения foo
адрес от G.dll. Я все еще не вижу проблемы.
Теперь замените AF.exe своим приложением, BG.dll с приложением Вашего поставщика, F.dll с Вашей версией повышения, G.dll с версией повышения поставщика.
Завершение: Я не вижу проблем, если имена dll отличаются.