Я собираюсь игнорировать первый сегмент сценария, так как кажется, что вы заботитесь только о части .click
. То, что вы можете сделать, это иметь переменную, которая чередуется между 0.0
и 0.8
, и иметь значение, на которое установлена громкость. Грубый макет ниже:
var change = 0.8
$(function() {
$("#myVideo").click(function() {
this.volume = change;
if (change == 0.8) { change = 0.0 }
else { change = 0.8 }
});
});
Необходимо использовать модуль подпроцесса вместо этого. См. этот небольшой документ для того, как переписать вызовы os.system для использования подпроцесса.
Необходимо использовать подпроцесс вместо os.system.
подпроцесс имеет преимущество способности изменить каталог для Вас:
import subprocess
my_cwd = r"..\folder\"
my_process = subprocess.Popen(["command name", "option 1", "option 2"], cwd=my_cwd)
my_process.wait() # wait for process to end
if my_process.returncode != 0:
print "Something went wrong!"
Модуль подпроцесса содержит некоторые функции помощника также если вышеупомянутые немного подробные взгляды.
Принятие Вас использует окна от обратных косых черт, Вы могли записать .bat файл из Python и затем os.system()
на этом. Это - взлом.
Удостоверьтесь, когда Вы используете '\' в Ваших строках, что их правильно оставляют.
Python использует '\' в качестве символа ESC, таким образом, строка "..\folder\filename"
оценивает к "..folderfilename"
так как завершенный f является все еще f.
Вы, вероятно, хотите использовать
r"..\folder\filename"
или
"..\\folder\\filename"
Даже неплохо использовать subprocess.Popen()
, но это не решает проблему.
Ваша проблема не в 255 символах, это было верно во времена DOS, позже увеличилось до 2048 для Windows NT/2000 и снова увеличилось до 8192 для Windows XP+.
Настоящее решение состоит в том, чтобы обойти очень старую ошибку в Windows API: _popen() и _wpopen().
Если вы используете кавычки в командной строке, вы должны добавить всю команду в кавычки, иначе вы получите сообщение об ошибке Слишком длинная
строка ввода.
Все операционные системы Microsoft, начиная с Windows XP, имели ограничение в 8192 символа, что теперь достаточно для любого приличного использования командной строки, но они забыли решить эту ошибку.
Чтобы преодолеть их ошибку , просто заключите всю команду в двойные кавычки, а если вы хотите узнать больше, прочитайте комментарий MSDN к _popen().
Будьте осторожны, потому что это работает:
prog
"prog"
""prog" param"
""prog" "param""
Но это не будет работать:
""prog param""
Если вам нужна функция, которая добавляет кавычки, когда они нужны, вы можете взять ее с http://github. com/ssbarnea/tendo/blob/master/tendo/tee.py