Нуб вопрос .. но ничего не могу с собой поделать - PullRequest
0 голосов
/ 05 мая 2020

Хорошо, так что я полный новичок, но я все же пытаюсь ... Я пробовал поискать ответ в Google, но большинство результатов поиска похожи, но немного по-другому, поэтому я не смог найти решение. Большинство сообщений и решений поисковых систем относятся к копированию URL-адреса веб-страницы, на которой вы находитесь. Здесь дело обстоит не так.

Моя проблема в том, что я хочу иметь возможность создать кнопку «копировать URL-адрес» на моем локальном P C (не на размещенном веб-сайте, а на локальном. html file) Итак, вот что у меня есть ... большой список локальных URL-адресов (носители на NAS) и файл basi c. html, который действует как меню. В настоящее время у меня есть кнопка загрузки (работает) и кнопка потока (также работает). Сама кнопка потока не открывает воспроизведение и поток мультимедиа, как вы думаете, вместо этого она расширяет скрытый div и отображает URL-адрес, который пользователь может скопировать и вставить в медиаплеер.

Меня осенило, что под URL-адресом было бы здорово иметь кнопку копирования URL-адреса, и хотя у меня она работала в течение короткого времени на одной ссылке, я не смог успешно воспроизвести ее на многих ссылках.

Небольшой код ..

<!-- Expanding text for Streaming Links -->
<script>
function toggleMe(a) {
var e = document.getElementById(a);
var toggleIcon = document.getElementById('toggle-icon');
if(!e) return true;
if(e.style.display == "none") {
e.style.display = "block";
toggleIcon.innerHTML = 'Stream';
}
else {
e.style.display = "none";
toggleIcon.innerHTML = 'Stream';
}
return true;
}
</script>

<!-- Copy URL Script -->
<script>
function clipboard(){
alert("Function is running");
var dt = new clipboard.DT();
alert("Step 1 Variable DT has been created");
dt.setData("text/plain", "Fallback markup text.");
alert("Step 2 Fallback markup text Data set");
dt.setData("text/html", "<i>Markup</i> <b>text</b>.");
alert("Step 3 Text/HTML Data Set");
clipboard.write(dt);
alert("Content written to Clipboard");
alert("Finished");
}
</script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard-polyfill/2.8.6/clipboard-polyfill.js"></script>


<table style="width:100%">
<tr>
<td align="left" width="500px">Learning to draw</td>
<td width="80px">Part 1</td>
<td>
<form method="get" action="http://MYINTERNALNASIPADDRESS/shares/Animations/Kids/Learn2Draw-Part1.mp4" style="display: inline;"><button type="submit">Download</button></form> or <button onclick="return toggleMe('LTDPt1')" type="text" value="Stream URL" /><span id="toggle-icon">Stream</span></button>
</td>
</tr>
</table>
<p id="LTDPt1" style="border:1px solid black; background-color:#FFFFCC; padding:2px; text-align:center; display: none;">
To stream this episode now, copy and paste this URL into VLC Media Player,
<strong><em id="urlText" type="text" value="http://MYINTERNALNASIPADDRESS/shares/Animations/Kids/Learn2Draw-Part1.mp4">
http://MYINTERNALNASIPADDRESS/shares/Animations/Kids/Learn2Draw-Part1.mp4
</em></strong><br /><button onclick="clipboard()">Copy URL</button></p>

Как вы можете видеть, что-то работает неправильно, я попытался добавить предупреждения, чтобы увидеть, где что-то пошло не так, но даже не дошел до шага 1!

Я работал над этим, переделывал это, много пробовал, и теперь я нахожусь на грани безнадежности! Я пробовал буфер обмена. js хотя, когда дело доходит до JS, меня легко запутать.

Да, вероятно, тег id не будет использоваться, хотя я почти уверен, что это сработало для одной ссылки, такой как эта последняя последняя ночь? Я устал, так что, возможно, я только что скопировал и вставил, и эта ссылка уже была в моем буфере обмена ... Не знаю.

Глядя на мой код, вероятно, по всему магазину остались фрагменты и фрагменты. Мои извинения, я действительно не знаю, куда еще обратиться.

Заранее спасибо.

...