Это мой первый раз, снимая JavaScript, поэтому извините меня, если это кажется немного грубым.Как запустить функцию на новой вкладке с помощью букмарклета?
Этот веб-сайт http://www.keepvid.com/ предоставляет закладку с помощью JavaScript, которая позволяет загружать видео с YouTube и других медиа-сайтов, нажимая на него, когда на странице мультимедиа. Однако я обнаружил, что вместо того, чтобы открывать страницу загрузки на новой вкладке, она открывается в текущем, прерывая медиа (возможно, чтобы побудить вас купить их версию pro).
Увидев это как возможность опробовать JavaScript (так как раньше я использовал только букмарклеты), я искал ответы, но те, которые я нашел, похоже, работали только со старыми версиями веб-сайта, так как JavaScript кажется обновлен.
Я пытаюсь сделать букмарклет, который открывает новую страницу, а затем загружает страницу загрузки для носителя.
Первый код, который я столкнулся, как решение было: javascript:void(window.open('http://keepvid.com/?url='+escape(window.location)));
Но это не сработало, который был, когда я заметил, что окончательный URL Букмарклет добавил &bm=y
к концу URL, поэтому я редактировал его :
javascript:void(window.open('http://keepvid.com/?url='+escape(window.location)+'&bm=y'));
затем я посмотрел на исходный код букмарклет в ::
javascript: (a%20=%20(b%20=%20document).createElement('script')).src%20=%20'http://keepvid.com/js/bm.js',%20b.body.appendChild(a);void(0);
и понял, что это был вызов на внешний сценарий (я считаю), и что он должен остаться неповрежденным.
И от их я пытался различные методы при получении этого работать, и до сих пор, это то, что у меня есть: javascript:void(window.open(window.location));void((a%20=%20(b%20=%20document).createElement('script')).src%20=%20'http://keepvid.com/js/bm.js',%20b.body.appendChild(a));
Этот скрипт открывает новую вкладку, но новая вкладка будет только копия видео на YouTube, а исходная вкладка загрузит страницу загрузки, которая по-прежнему прерывает медиа, делая мою работу бесполезной, если немного более удобной.
Я пытался все, как я могу, но мне кажется, что я не могу иметь второй сценарий в том же букмарклете без него указывая на исходную вкладку она была вызвана в.
Итак, я был интересно, что мне нужно сделать, чтобы: 1. Создайте новую вкладку 2. Загрузите новую вкладку на страницу загрузки (вместо оригинала). 3. Оставьте исходную вкладку самостоятельно и используйте ее только для захвата window.location
Если это невозможно сделать, это их способ иметь букмарклет в панели инструментов, который делает копию исходной страницы, а затем указывает на ab ookmarklet в меню закладок, которое содержит перенаправление на страницу загрузки?
Не имеет техническое решение для вас, но, насколько лучше букмарклета для скачивания видео, вы можете проверить это: http://deturl.com/bookmarklet-to -directly-download-videos-from-youtube.asp –
Еще один комментарий. Ваш первый букмарклер работал для меня, когда я тестировал на YouTube с помощью Firefox. Обратите внимание, что в Firefox вы не можете вставить код букмарклета в URL-адрес для проверки того, как вы могли это сделать. Сначала вы должны ввести его в фактическую закладку. В Chrome вы можете сделать это, только если вручную введите «javascript:». Если вы попытаетесь вставить код букмарклета, часть «javascript:» будет удалена. –
Прежде всего, я только что проверил ссылку, которую вы мне дали, и это похоже на очень хороший букмарклет для загрузки видео на YouTube. Но на данный момент я действительно хочу решить эту проблему, чтобы посмотреть, что я могу сделать с JavaScript. Во-вторых, просто чтобы уточнить, всякий раз, когда я редактировал JavaScript, я бы вставлял его в закладку, а не в URL. И о первом рабочем закладе, я брошу вам сравнение изображений, которое я дал «mplungjan». [(Изображение KeepVid Code)] (http://i.imgur.com/77g5f.png) | [(Изображение моего кода)] (http://i.imgur.com/GuxYo.png). Обратите внимание на разницу в списке загрузок? – Ylj