Есть функция, которая загружается из xul-приложения при загрузке страницы.
Функция ищет определенные слова на страницы и заменяет их другими (подсвечивает - добавляет верстку хтмл).
Так как того, что ищет функция много, там переборчики, и страница может подтармаживать. У меня 2 компа: на моём почти не заметно, а на втором ступор где-то чуть меньше чем пол-секунды во время выполнения скрипта.
Есть ли какой-то метод устранить это? К примеру, у меня пока идея разбить функция на несколько функций (у меня как раз 5 массивов с регами для слов, которые я ищу, вот на 5 функций разбить) и вызвать их поочереди через разные setTimeout.
Но я не уверен на сколько эта идея корректна, устранятся ли тормоза? И есть ли идеи получше?
И ещё... Бывают проблемы с интернетом, и на странице всё загрузилось, а фотки нет к примеру. Вот как задать выполнения функции ни при полной загрузке страницы а постепенно - по степени загрузке, прорисовки страницы (к примеру четверть страницы загрузил, отобразил, вот на
…Не плохо.
Только вот было бы полезней если адрес ссылки скопировать (иногда надо)...
Только как это удобней сделать? Может чтоб подсказка пряталась с задержкой - т.е. на неё можно успеть навести, и тогда она не будет прятаться, и можно будет скопировать ссылку. (ещё бы удобней чтоб при клике на надпись он выделял её (чтоб мышкой не выделять))
блин, точно... я же эту тему пол года назад и создавал =)
Сорри, а поиск юзал, но эту тему не нашел чё-то =(
Как через яваскрипт получить значение из буфера обмена?
Спасибо, использовал так:
<menuitem oncommand="function();"> <hbox class="menu-iconic-left"> <image class="menu-iconic-icon" src="chrome://url..." align="left"/> <label value="Значение" align="right" /> </hbox> </menuitem>
Есть расширение, в нём есть оверлей- менюшка и каждому элементу соответсвует картинка.
сделано так:
И есть проблема, в зависимости от темы, эти изображения то видны, то не видны. (и так со многими расширениями)
Вот видны всегда во всех темах картинки расширения FlashGot.
И щас я установи ФФ2.0, и тут вообще ни в какой теме не показывает картинки.
Я посмотрел код FlashGot'а, но толком не понял. там стиль вынесен в .css файл и тот же самый list-style-image, но почему-то картинки всегда видны
Заранее спасибо за помощь.
спасибо, поиск не знал почему задавать.. задавал всякий, но не находил то что надо
Я никогда не работал с ThunderBird, но теперь так получилось, что необходимо. И нужно отвечать на письмо сразу как я получаю письмо.
Установил FireFox 2.0 (вместо 1.5 моего).
Мне нужно видеть, что мне пришло сообщение. Я понимаю что я могу оставить сандербёрд открытым, и он мне будет уведомлять (проверка каждые 5 минут), но её нельзя свернуть в трей. А в панеле висит - мне не удобно.
Есть ли расширения для птицы, которая будет сворачивать её в трей?
Или есть расширение какое-то удобное, которое в Лисе мне будет удобно уведомлять о приходе нового письма?
Посоветуйте пожалуйста.
Заранее спасибо.
про setAttribute я уже понял.. он искал эту функцию у себя в документе, а там её нету.
а вот почему с addEventListener и просто через xxx.onclick у меня не работало, щас буду разбираться =(
В html документе есть кнопка, но она там не просто в html введена, а ведена через javascript:
document.write('<form ...>'); document.write('<input type=\'button\' ... >'); // и т.д.
Надо в XUL приложении назначить ему действие на mousedown (да или на mouseover).
я пробовал уже как угодно:
//1 вариант submitButton.setAttribute("onmousedown","myfunction()"); //2 вариант submitButton.onmousedown = myfunction; //3 вариант submitButton.addEventListener("mousedown",myfunction,true);
Ни как не хочет.
Кнопку находит правильно, проверял:
alert(submitButton.getAttribute("onclick"));
Помогите плз =)
…сорри, там вообще-то popupshown, да. Это я когда вставлял, вставлял из другой пробы и забыл убрать on (там я хотел прописать это прямо в xul файле как атриббут попапу)
Добавлено Втр 24 Окт 2006 19:07:03 :
кстати так работает:
<popup id="contentAreaContextMenu" onpopupshown="todowhenpopup(event)">
открыватся простой popup =) без моего <menuitem>
а вот что-то не получается.
в xul-file:
<popup id="contentAreaContextMenu"> <menuseparator /> <menuitem id="myTest" label="Test " oncommand="test1();" /> <menuseparator /> </popup>
Показывает его, всё ок.
Но:
Далее (в js файле):
document.getElementById("contentAreaContextMenu").addEventListener("onpopupshown",todowhenpopup,true); function todowhenpopup(event){ if (window._content.document.location.href.indexOf("test.com")==-1) { } else { txt = grabSelect(); } }
функцию выполняет, так как переменная txt заполняется выделением, но элемента моего в popup-e нету =(
…а что именно надо? в частном случае можно вызвать пхп скрипт через document.location.href, который уже обращается к mySql... но это так =) допотопный спосод и ни в каждом случае может подойти
tnx! =)
при mousedown по идее тоже теряется.
я вот тут увидел в лисе - выделяешь что-то, жмёшь правый клик и там "Найти в интернете 'то, что выделено'".
Может сделаю так-же, получаю выделиное при правом клике (фокус не теряется), а дальше уже вроде должно всё пойти =)
всё так просто?
а /*defaulView.*/ это что? =)
Как получить выделение в документе если мы нажали на какую-то кнопку.
К примеру есть функция, которая ищет выделение вот так:
if (window._content.getSelection){ selected=window._content.getSelection(); } selected+="";
Оно работает, если я ставлю эту функцию на кнопку на mouseover к примеру. А если ставлю на onclick, то не работает (так как выделение теряется при клике)
Как это исправить? Или я вообще не с той стороны подошел.
Что мне надо:
Надо чтоб пользователь мог выделить в документе любой текст, нажать на вторую кнопку мыши и там будет меню. Главное получить в переменную то, что пользователь выделил (дальше уже не важно)
Заранее спасибо
ок =) спасибо...
ок, спасибо, понял.
А обработчик событий вешать так: ?
window. addEventListener ("popupshowing", todowhenpopup, true); function todowhenpopup(event) { // if () {} - показывать/не показывать элемент. }
А как кстати, изменить свойство hidden? document.getElementById("test").hidden=true?
Нужно добавить элемент в контекстное меню... И как сделать проверку - чтоб этот элемент там был только на определенном сайте... или хотя бы чтоб он был активен на нём, а на остальных сайтах, чтоб этот элемент был серенький? =)
Заранее спасибо
Я так понимаю багзилла, это система отслеживания багов.
Подкиньте пожалуйста ссылок, на то как ею пользоваться (на русском) а то я особо не понимаю =(
Спасибо, попробую. Если заработает с меня виртуальное пиво =)
На ИЕ и Оперу мне особо фиолетово - скрипт вызывается из XUL-приложения.
Добавлено Вск 15 Окт 2006 16:14:41 :
Спасибо, тебе. А то я уже думал всё... не решу эту проблему (столько форумов опросил =) )
А я кстати когда тестил, сначала подумал что проблема с регами, и просил выдавать алерт ответ функции test. Тогда он выдавал false, но подсвечивал =) Да... это баг получается =)
Я опять со своими регами (наверное некоторых уже достал) но вот в чём проблема:
Есть, к примеру 2 массива с регами: a,b. (ну у меня их на самом деле больше)
И есть массив divs с HTML-элементами, а именно к примеру с <div> на странице.
Надо пробежаться по всему массиву divs и проверить на каждый рег. И найденные реги подчеркнуть.
[code]<html>
<head>
<script>
<!--
function mytest(){
var a = new Array(/green/gi, /white/gi, /black/gi, /yellow/gi, /red/gi);
var b = new Array(/nicolay/gi, /sereja/gi, /vasea/gi, /ibrahim/gi, /petea/gi);
var divs = document.getElementsByTagName("div");
var a2 = {};
var b2 = {};
var aa = [];
var bb = [];
var i,j;
for (j=0; j<divs.length; j++){
for (i=0; i<a.length; i++){
if (a[i].test(divs[j].innerHTML)) a2['~' + j]=true;
}
for (i=0; i<b.length; i++){
if (b[i].test(divs[j].innerHTML)) b2['~' + j]=true;
}
}
for(i in a2) {
if(i.charAt(0)!='~') continue;
aa.push(i.substr(1));
}
for(i in b2) {
if(i.charAt(0)!='~') continue;
bb.push(i.
И всё? =)
т.е. надо дописать
var mytimer = windows.setTimeout(function,time);
Вообще-то, я уже там понял почему именно происходит глюк... не совсем в самом таймере, но и в нём тоже =)