У меня есть приложение, разбросанное по этому формату, но я не знаю, какой это. Это не jQuery, так что же?
$('some_edit').style.display = "block";
$('some_views').style.display = "none";
I получите это в firebug, и я знаю, что элемент присутствует:
$("some_edit").style is undefined
Многие люди определили символ «$» как замену для document.getElementById ().
В основном:
function $(id) { return document.getElementById(id); }
$("ElementID").innerHTML = "Text"; //Usage
Более подходящий пример «пространства имен»:
var DOM = { // creating the namespace "DOM"
$: (function() {
if(document.getElementById)
return function(id){ return document.getElementById(id); }
else if(document.all)
return function(id) { return document.all[id]; }
else
return function(id) { /* I don't even want to get into document.layers */ }
})()
};
// Later in the code:
{
function ExampleFunction() {
// ...
DOM.$("ElementID").style.backgroundColor = "#96d0a0"; // a nice minty green color
// ...
}
}
Я использовал шаблон самовызова ( function () {...} ()
) в этом примере.
Сначала я подумал, что селектор jquery, скорее всего, будет $ ("# some_edit")
, а затем .css ()
. так я бы сказал, прототип или mootools, или домашний напиток $.
вы, безусловно, можете не учитывать как mootools
, так и прототип
, потому что, если селектор возвращает объект, свойство стиля будет доступно (игнорируя передовой опыт в обеих средах по настройке стилей) .
после этого сайт использует присваивание homebrew $ или jquery, которые используются некорректно.
на самом деле $ ("foo"). Style.blah в jquery вызовет именно это исключение (даже если селектор был хорош) - здесь на помощь приходит jsfiddle
case point jquery (триггеры): http://www.jsfiddle.net/dimitar/vmsZn/
прототип контрольной точки (работает): http://www.jsfiddle.net/dimitar/vmsZn/1/
case point mootools (работает): http://www.jsfiddle.net/dimitar/vmsZn/2/
Он устанавливает стиль отображения для двух элементов страницы - свойство display определяет тип блока, который должен генерировать элемент.
block = Элемент создаст блок блока (разрыв строки до и после элемента) none = Элемент вообще не будет генерировать коробку
Это JQuery - использует $ в качестве ключевой переменной.
Добавлено:
Также могут быть mootools. Также использует $
. Добавлено:
'some_edit' будет идентификатором элемента.
пс. Я согласен, что $ может быть чем угодно. Хотя есть вероятность, что это JQuery или Mootools. «Когда вы слышите стук копыт, думайте о лошадях, а не о зебрах».
Поместите [0] перед $ ('some_views'), чтобы вернуть собственный элемент DOM.
$ ('some_views') [0] .style.display = "none";
или $ ('some_views'). Get (0) .style.display = "none";
или $ ('some_views'). css ('display', 'none') для перебора коллекции элементов DOM.
Это может быть много чего - изучите исходный код (или используйте Firebug) и посмотрите, какие JS-библиотеки загружаются.