Эээ, еще вопрос: responseURL - не работает в фф < 32. Я попробовал
... var isFF32 = (parseFloat(Services.appinfo.platformVersion) >= 32); ... if (xhr.status == 200 || (isFF32 ? xhr.responseURL : xhr.getResponseHeader("Location")) != aURL) { reURL = isFF32 ? xhr.responseURL : xhr.getResponseHeader("Location"); ...
сделать, но getResponseHeader - null возвращает. Да и response - тоже пустую строку (responseType я догадался прописать). Что-то я завис на этом.
Отсутствует
Хочется кнопку, при нажатии которой, ссылка из адресной строки с фильмом КиноПоиска открывалась в SimpleTV плеере, выполняя действие файл - открыть URL (открыть из буфера).
Пытался подставить свой путь "G:\\SimpleTV-2.2.4\\tv.exe" в Открыть видео в PotPlayerMini. Плеер открывается и...тишина.
Собственно, нужно без всяких прибамбасов и контекстно меню. Нажал кнопку на странице с фильмом, он открылся в плеере.
Отсутствует
oleg.sgh
var path = "G:\\SimpleTV-2.2.4\\tv.exe"; this.onclick =e=> { if ( e.button == 0 ) play(content.location.href, "-open"); }; self.image = "moz-icon://file://" + path; var playerName = path.split("\\").pop().replace(".exe",""); self.label = "Открыть видео в " + playerName; var contextMenu = document.getElementById("contentAreaContextMenu"); var menuitem = contextMenu.insertBefore(document.createElement("menuitem"), document.getElementById("context-sep-open")); menuitem.setAttribute("label", "Открыть в " + playerName); menuitem.setAttribute("class", "menuitem-iconic"); menuitem.setAttribute("image", "moz-icon://file://" + path); menuitem.onclick =e=> play(gContextMenu.getLinkURL(), "-open"); addEventListener("popupshowing", ()=> menuitem.hidden = !gContextMenu.onLink, false, contextMenu); addDestructor(()=> menuitem.remove() ); function play(link, param) { var file = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile); var process = Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess); file.initWithPath(path); process.init(file); process.run(false, [link, param], 2); }; self.tooltipText = "Л: Открыть видео в " + playerName;
Добавлено 23-07-2016 16:26:05
Возможно, нужно поменять местами ссылку и параметр запуска, тогда просто замените на
Отредактировано turbot (23-07-2016 16:26:05)
Отсутствует
Хочется кнопку, при нажатии которой, ссылка из адресной строки с фильмом КиноПоиска открывалась в SimpleTV плеере
Да, так заработала. Спасибо.
Установил сейчас SimpleTV, но он не открывает ссылки с кинопоиска, какого вида должен быть url, как смотреть:
http://www.kinopoisk.ru/film/489729/ ?
http://www.7kinopoisk.ru/film/489729/ ?
Отсутствует
fokanik
Похоже, плеер не может открыть некоторые ссылки даже из интерфейса. Мне попадались такие.
Открывать на самом кинопоиске. Эту открывает http://www.kinopoisk.ru/film/462491/
Такое наблюдаться и с потплеером на ютубе.
Кстати, в плеере нужен скрипт. Как я понял, плеер без него не найдет видеопоток.
Отсутствует
но он не открывает ссылки с кинопоиска, какого вида должен быть url, как смотреть:
http://www.kinopoisk.ru/film/489729/ ?
http://www.7kinopoisk.ru/film/489729/ ?
по перврвой сылке нет фильма в базе (база сдесь)
вторая не относится к сайту кинопоиска
Отсутствует
//drag'n'drop - перетащите ссылку или папку закладок на кнопку var path = "C:\\Program Files\\DAUM\\PotPlayer\\PotPlayerMini.exe"; var params = ["/add"]; var links = []; this.ondragover = () => false; this.ondrop = e => { var place = e.dataTransfer.getData("text/x-moz-place"), obj; if (place && (obj = JSON.parse(place)).type == "text/x-moz-place-container" && !("annos" in obj && obj.annos.some(anno => anno.name.startsWith("livemark/") || anno.value == "AllBookmarks"))) { var html = e.dataTransfer.getData("text/html"); var doc = new DOMParser().parseFromString(html, "text/html"); links = [...doc.querySelectorAll("body > DL > DD > A")].map(a => a.getAttribute("HREF")); } else if (true) links = [e.dataTransfer.getData("text/x-moz-url").split("\n")[0]]; play(); } function play() { var file = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile); var process = Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess); file.initWithPath(path); process.init(file); var args = []; if (Array.isArray(links)) for(var link of links) args.push(" "+link); if (Array.isArray(params)) for(var param of params) args.push(" "+param); process.run(false, args, args.length); };
Всеядный potplayer получился, но блин - на больших мониторах рука устает быстро
//drag'n'drop - перетащите ссылку или папку закладок на кнопку var path = "C:\\Portable\\PortableApps\\GoogleChromePortable\\GoogleChromePortable.exe"; var params = ["--enable-click-to-play", "--disable-internal-flash", "--disable-metrics-system", "--disable-hang-monitor", "--disable-extensions", "--disable-desktop-notifications", "--disable-logging", "--user-agent=Mozilla/5.0 (iPad; CPU OS 8_1 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12B410 Safari/600.1.4"]; var links = []; this.ondragover = () => false; this.ondrop = e => { var place = e.dataTransfer.getData("text/x-moz-place"), obj; if (place && (obj = JSON.parse(place)).type == "text/x-moz-place-container" && !("annos" in obj && obj.annos.some(anno => anno.name.startsWith("livemark/") || anno.value == "AllBookmarks"))) { var html = e.dataTransfer.getData("text/html"); var doc = new DOMParser().parseFromString(html, "text/html"); links = [...doc.querySelectorAll("body > DL > DD > A")].map(a => a.getAttribute("HREF")); } else if (true) links = [e.dataTransfer.getData("text/x-moz-url").split("\n")[0]]; play(); } function play() { var file = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile); var process = Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess); file.initWithPath(path); process.init(file); var args = []; if (Array.isArray(links)) for(var link of links) args.push(link); if (Array.isArray(params)) for(var param of params) args.push(param); process.run(false, args, args.length); };
Ай нормалек кнопка вышла
Отредактировано fokanik (28-07-2016 22:46:35)
Отсутствует
var path = "C:\\Program Files\\SMPlayer\\smplayer.exe"; var params = ["-add-to-playlist"]; var links = []; this.ondragover = () => false; this.ondrop = e => { var place = e.dataTransfer.getData("text/x-moz-place"), obj; if (place && (obj = JSON.parse(place)).type == "text/x-moz-place-container" && !("annos" in obj && obj.annos.some(anno => anno.name.startsWith("livemark/") || anno.value == "AllBookmarks"))) { var html = e.dataTransfer.getData("text/html"); var doc = new DOMParser().parseFromString(html, "text/html"); links = [...doc.querySelectorAll("body > DL > DD > A")].map(a => a.getAttribute("HREF")); } else if (true) links = [e.dataTransfer.getData("text/x-moz-url").split("\n")[0]]; play(); } function play() { var file = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile); var process = Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess); file.initWithPath(path); process.init(file); var args = []; if (Array.isArray(links)) for(var link of links) args.push(link); if (Array.isArray(params)) for(var param of params) args.push(param); process.run(false, args, args.length); };
При открытии папки с закладками, набросе вкладки на кнопку или ссылки со страницы - smplayer все хорошо открывает.
А вот если бросить на него одну ссылку из папки или панели закладок, то в плеере к ссылке добавляется лишний пробел и видео не стартует: сообщение на экране - невозможно получить страницу ютуба.
C potplayer(ом) и хромом такое не наблюдается, почему так, как исправить?
И еще если взять из папки одну ссылку с плейлистом, то плеер её пережевывает даже с пробелом на конце и все работает.
Отредактировано fokanik (29-07-2016 17:48:12)
Отсутствует
fokanik
Может, потому что тут params не Array, а вы зачем-то убрали else из
if (Array.isArray(links)) for(var link of links) args.push(link); else args.push(links); if (Array.isArray(params)) for(var param of params) args.push(param); else args.push(params);
Отсутствует
fokanikМожет, потому что тут params не Array, а вы зачем-то убрали else...
var params = ["-add-to-playlist"]; if (Array.isArray(links)) for(var link of links) args.push(link); if (Array.isArray(params)) for(var param of params) args.push(param);
Забыл скобочки поставить пока экспериментировал.
var path = "C:\\Program Files\\SMPlayer\\smplayer.exe"; var links; this.ondragover = () => false; this.ondrop = e => { var place = e.dataTransfer.getData("text/x-moz-place"), obj; if (place && (obj = JSON.parse(place)).type == "text/x-moz-place-container" && !("annos" in obj && obj.annos.some(anno => anno.name.startsWith("livemark/") || anno.value == "AllBookmarks"))) { return; } else if (true) links = e.dataTransfer.getData("text/x-moz-url").split("\n")[0]; //где-то тут пробел сидит? else return; //alert(links); //в алерте пробела у ссылки нет //links = "https://www.youtube.com/watch?v=Y9cbOyqE5eE"; //видео работает, ссылка передается без пробела на конце play(); } //тут железно все function play() { var file = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile); file.initWithPath(path); var process = Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess); process.init(file); process.run(false, [links], 1); }
Что за ерунда:
В алерте открывается ссылка вида: https://www.youtube.com/watch?v=abracadabra/
А в плеер передается ссылка с пробелом на конце + слеш: https://www.youtube.com/watch?v=abracadabra /
Отредактировано fokanik (30-07-2016 12:16:15)
Отсутствует
Ура, заработал smplayer:
Подправил строчку - links = [e.dataTransfer.getData("text/x-moz-url").split("\r\n")[0]];
----------------------------------------------------------------------------------------------------------------------
С одной строчкой перестало работать открытие ссылок со страницы и открытие при перетаскивании вкладки на кнопку, пришлось еще добавить строчку:
var urlik = e.dataTransfer.getData("text/x-moz-url").split("\r\n")[0]; links = [urlik.split("\n")[0]];
Готово :
custombutton://%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0D%0A%3Ccustombutton%20xmlns%3Acb%3D%22http%3A//xsms.nm.ru/custombuttons/%22%3E%0A%20%20%3Cname%3ESMPlayer%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/png%3Bbase64%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%3D%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5Bvar%20path%20%3D%20%22C%3A%5C%5CProgram%20Files%5C%5CSMPlayer%5C%5Csmplayer.exe%22%3B%0Avar%20params%20%3D%20%5B%22-add-to-playlist%22%5D%3B%0Avar%20links%20%3D%20%5B%5D%3B%0A%0Athis.ondragover%20%3D%20%28%29%20%3D%3E%20false%3B%0Athis.ondrop%20%3D%20e%20%3D%3E%20%7B%0A%20%20%20%20var%20place%20%3D%20e.dataTransfer.getData%28%22text/x-moz-place%22%29%2C%20obj%3B%0A%20%20%20%20if%20%28place%20%26%26%20%28obj%20%3D%20JSON.parse%28place%29%29.type%20%3D%3D%20%22text/x-moz-place-container%22%0A%20%20%20%20%20%20%20%20%26%26%20%21%28%22annos%22%20in%20obj%20%26%26%20obj.annos.some%28anno%20%3D%3E%20anno.name.startsWith%28%22livemark/%22%29%20%7C%7C%20anno.value%20%3D%3D%20%22AllBookmarks%22%29%29%29%20%7B%0A%20%20%20%20%20%20%20%20var%20html%20%3D%20e.dataTransfer.getData%28%22text/html%22%29%3B%0A%20%20%20%20%20%20%20%20var%20doc%20%3D%20new%20DOMParser%28%29.parseFromString%28html%2C%20%22text/html%22%29%3B%0A%20%20%20%20%20%20%20%20links%20%3D%20%5B...doc.querySelectorAll%28%22body%20%3E%20DL%20%3E%20DD%20%3E%20A%22%29%5D.map%28a%20%3D%3E%20a.getAttribute%28%22HREF%22%29%29%3B%0A%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20else%20if%20%28true%29%20%7B%0A%20%20%20%20%20%20%20%20links%20%3D%20%5Be.dataTransfer.getData%28%22text/x-moz-url%22%29.split%28%22%5Cr%5Cn%22%29%5B0%5D%5D%3B%0A%20%20%20%20%20%20%20%20links%20%3D%20%5Blinks%5B0%5D.split%28%22%5Cn%22%29%5B0%5D%5D%3B%0A%20%20%20%20%20%7D%0A%20%20%20%0A%20%20play%28%29%3B%20%20%20%20%20%20%20%0A%7D%0A%0Afunction%20play%28%29%20%7B%0A%20%20%20var%20file%20%3D%20Cc%5B%22@mozilla.org/file/local%3B1%22%5D.createInstance%28Ci.nsILocalFile%29%3B%0A%20%20%20var%20process%20%3D%20Cc%5B%22@mozilla.org/process/util%3B1%22%5D.createInstance%28Ci.nsIProcess%29%3B%0A%20%20%20file.initWithPath%28path%29%3B%0A%20%20%20process.init%28file%29%3B%0A%20%20%20var%20args%20%3D%20%5B%5D%3B%0A%20%20%20if%20%28Array.isArray%28links%29%29%20for%28var%20link%20of%20links%29%20args.push%28link%29%3B%0A%20%20%20if%20%28Array.isArray%28params%29%29%20for%28var%20param%20of%20params%29%20args.push%28param%29%3B%0A%20%20%20process.run%28false%2C%20args%2C%20args.length%29%3B%0A%7D%3B%5D%5D%3E%3C/initcode%3E%0A%20%20%3Ccode%3E%3C%21%5BCDATA%5Bvar%20file%20%3D%20Cc%5B%22@mozilla.org/file/local%3B1%22%5D.createInstance%28Ci.nsILocalFile%29%3B%0Afile.initWithPath%28%22C%3A%5C%5CProgram%20Files%5C%5CSMPlayer%5C%5Csmplayer.exe%22%29%3B%0Afile.launch%28%29%3B%5D%5D%3E%3C/code%3E%0A%20%20%3Caccelkey%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/accelkey%3E%0A%20%20%3Chelp%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/help%3E%0A%20%20%3Cattributes/%3E%0A%3C/custombutton%3E
Отредактировано fokanik (31-07-2016 02:44:24)
Отсутствует
А можно как-то такую штуку сделать, допустим:
- у меня есть папка в которой несколько десятков ссылок.
- ссылки я просматриваю по порядку (3 ссылки сегодня, еще 2 ссылки через два дня и т.д) и когда досматриваю последнюю ссылку - снова перехожу к первой ссылке.
- как бы так сделать, что-то - чтоб не запутаться с порядком просмотра ссылок? Ну что-то вроде - открыл первую ссылку (последняя открытая по времени) и она перемещается в конец списка (сортировка по времени доступа).
- ну или может просто кнопку сделать, при нажатии на которую ссылки из папки будут открываться по очереди.
Есть в custom buttons что-то подобное из уже готового?
Отсутствует
fokanik
3 ссылки сегодня, еще 2 ссылки через два дня и т.д
Morning Coffee :: Дополнения Firefox
Отредактировано oleg.sgh (31-07-2016 20:37:37)
Отсутствует
3 ссылки сегодня, еще 2 ссылки через два дня и т.д Morning Coffee :: Дополнения Firefox
Не, там токого и близко нет, вроде - уже удалил дополнение.
Или может я не четко выразился, все ссылки могут быть открыты и за 5 минут, только они должны открываться в одном окне и по порядку (по кругу). Смысл в том, что если эти пять минут растянуть на неделю, то начнешь забывать когда какую ссылку открывал. А так, нажал кнопочку и все, никакой путаницы.
Отредактировано fokanik (31-07-2016 23:41:27)
Отсутствует
А можно как-то такую штуку сделать, допустим:
- у меня есть папка в которой несколько десятков ссылок.
- ссылки я просматриваю по порядку (3 ссылки сегодня, еще 2 ссылки через два дня и т.д) и когда досматриваю последнюю ссылку - снова перехожу к первой ссылке.
- как бы так сделать, что-то - чтоб не запутаться с порядком просмотра ссылок? Ну что-то вроде - открыл первую ссылку (последняя открытая по времени) и она перемещается в конец списка (сортировка по времени доступа).
- ну или может просто кнопку сделать, при нажатии на которую ссылки из папки будут открываться по очереди.Есть в custom buttons что-то подобное из уже готового?
Вы можете просто перемещать разделитель под последнюю прочитанную ссылку
Хорошо, когда у человека есть выбор, но плохо, когда он перед ним стоит ©
Отсутствует
Кто-нибудь пользуется кнопками на основе Menu example for Custom Buttons https://gist.github.com/Infocatcher/5891622 ?
После обновления до 48 не работает.
Отсутствует