Андрей Щ.
190 сообщений
#16 лет назад
Добрый день. Может кто сталкивался, как получить доступ к указателю мыши, выставляя его в нужный вид? тоесть например у меня идет аякс подгрузка данных, и я хочу на время от пользователя залочить возможность изменения, ставлю поинтер в песочные часы.
Андрей Л.
457 сообщений
#16 лет назад
Можно JS функцией:

<html>

<head>
<title>sasa</title>
<script>
function loading(){
document.getElementById("body").style.cursor = 'wait';
}
</script>
</head>

<body id="body" onload="loading();">

</body>

</html>

условие поменяете, и готово)
Андрей Щ.
190 сообщений
#16 лет назад
Спасибо
Андрей Щ.
190 сообщений
#16 лет назад
Немного не то. получается, что для боди он часики, а для хрефов и контролов всяких - отнюдь нет. тотли у них выше приоритет, толи еще что.

вопрос - можно ли как-то красиво сделать курсор часиками для всего документа полностью, или нужно в таком случае прописать document.getElementById("шв".style.cursor = 'wait'; для всех элементов документа, которые перекрывают боди?
Сергей Ш.
24 сообщения
#16 лет назад
Для этого существуют CSS и классы. Тут надо чётко прописать чтобы все используемые елементы наследовали курсор предка, правда пользаватели тогда будут материть разработчитка.
Есть и такое решение:
var hrefs=document.getElementsByName("a");
for(var i in hrefs)hrefs.style.cursor="href";//названия курсоров не помню ибо не пользуюсь
Станислав Малкин
1410 сообщений
#16 лет назад
Цитата ("shatunov_sv"):
Для этого существуют CSS и классы. Тут надо чётко прописать чтобы все используемые елементы наследовали курсор предка, правда пользаватели тогда будут материть разработчитка.
Есть и такое решение:
var hrefs=document.getElementsByName("a");
for(var i in hrefs)hrefs.style.cursor="href";//названия курсоров не помню ибо не пользуюсь


Поправка к коду - не getElementsByName, a getElementsByTagName. getElementsByName выбирает теги, у которых name равно тому, что указано в скобках. А нужно выбрать именно массив всех тегов <a ...>
Андрей Щ.
190 сообщений
#16 лет назад
Тоесть по смыслу обойти контролы все, которые нужно залочить. там в принципе не так уж и много их, инпуты, хрефы, спаны, селекты... вроде все, что использую, перечислил.

Спасибо ArtLab и shatunov_sv, решение изящное, а со своим знанием яваскрипта не догадался бы наверное никогда. ну разве полноценно перечитав справочник функций.
Сергей Ш.
24 сообщения
#16 лет назад
Цитата ("magemerlin"):
ну разве полноценно перечитав справочник функций.

var list; for(var i in document)list+="<h1>"+i+"</h1>";document.body.innerHTML=list;

и гуглим по порядку
PS
я тут код вобще не проверяю... лениво
Андрей Щ.
190 сообщений
#16 лет назад
Да дело ведь не в том, чтобы понять чужой код! Дело в том, чтобы знать "как сделать". Если я в принципе не знаю функции getElementsByTagName() то как я могу придумать изящное решение, основанное на ней? Яваскрипт отличается от платформенных языков, от пхп того же, он решает принципиально другие задачи. Поэтому все мои знания с VB, C++, PHP тут не помогают. У меня было решение, пробежать по всем идшкам всех элементов и просто выставить нужный поинтер, но это решение далеко от изящного как ... вобщем далеко.