YouTube에서 Control-L 단축키 사용 중지


5

나는 사용하는 데 익숙하다. Ctrl 내 주소 표시 줄에 액세스합니다. 유감스럽게도 YouTube는 "유용하게"정의합니다. Ctrl 현재 재생중인 동영상에서 몇 초 앞으로 건너 뛰는 단축키로 YouTube에서 해당 키 바인딩을 추가하지 못하도록하는 방법이 필요합니다. 페이지로드 후 바인딩을 허용하지 않는 Greasemonkey / Scriptish userscript.

YouTube 동영상이 포함 된 제 3 자 사이트가 아니라 YouTube 동영상 페이지에있는 동안 명확하게 알 수 있습니다.이 동작은 Flash Player 하지 않습니다 집중 해.

참고 : 저는 알고 있습니다. Alt ~와 같다. Ctrl 파이어 폭스에서,하지만 너무 익숙해 져서. Ctrl 차라리 강제로 전환하지 않을 것입니다.

편집 : 여러 OS를 사용하기 때문에 OS 별 솔루션이 바람직하지 않습니다. 브라우저 내 솔루션이 선호됩니다.


어떤 운영 체제입니까?
iglvzx

1
OS는 관련이 없습니다. 이것은 YouTube가 브라우저 (이 경우 Firefox)에 내가 원하지 않는 일을하도록 말하는 것입니다. (그리고 내가 묻기 전에, 그렇습니다. OS와 상관없이 일어난다는 것을 확인했습니다.)
Heptite

오. 알아. Windows 사용자 인 경우 AutoHotkey를 사용하면이 문제를 쉽게 해결할 수 있습니다.
iglvzx

F6은 또한 보너스가있는 FF의 주소 표시 줄을 선택하지만 키 스트로크가 적을뿐만 아니라 IE에서도 작동합니다. (오페라는 F8을 사용한다.) 그러나 구글은 웹 사이트에 더 많은 키 스트로크 바로 가기를 추가하여 브라우저 자체와 상호 작용하려는 경우 마우스를 잡아야한다고 분명히 믿고있다.
staticsan

답변:


2

첫째, 버그는 2001 년 이래로 발생했습니다. 그것은 그것만큼 멀리보고되었습니다.

신고 : 2001-05-01 14:28 PDT

Mozilla 버그 리포트 . 이 말은 모질라가 그것을 인식하고있을뿐만 아니라 잠시 동안 모질라를 알았 음을 알려줍니다. 아, 그리고 그것이 더 일반적인 버그 리포트 인 것 같습니다. 이것 하나는 여기에있다. 더 최근에 귀하의 문제에 더 구체적이고, 내가 귀하에게 연결 한 첫 번째 사본의 태그로 태그되었습니다.

그건 그렇다. ~이다. 코드를 사용하여 일부 (대부분?) Youtube 키보드 단축키를 비활성화하려면 ... 비디오를 웹 페이지에 넣을 때 내장 태그에 추가해야합니다.

amp amp : disablekb = 1

정보를 전달하는 웹에는 수많은 사이트가 있습니다. 여기에 딱 하나만 . 불행히도, Greasemonkey 스크립트를 실행하여 페이지를로드 할 때 YouTube에 포함 된 비디오 태그에 해당 코드를 추가하는 것이 간단하다면 이미 완료되었을 것입니다. 모질라의 사람들.

이제 파이어 폭스에서 애드온을 파고 들며 유튜브 (YouTube)와 같은 사이트에서 자신의 경험을 개인화 할 수있는 스타일리쉬 (Stylish)라는 용어를 발견했습니다. 필자는 개인적으로는 알지 못하지만 사용자 지정 수준에 따라 정확히 무엇을하는지에 따라 코드를 주입 ​​할 수 있습니다.

Youtube 환경을 변경하는 Greasemonkey 스크립트가 있습니다. 이 같은 키보드 단축키를 비활성화하는 기능은 자세히 설명하지 않았습니다. 그러나 스크립트 작성자는이를 고려하지 않았거나 제안하지 않았습니다.


세련된 CSS입니다. Greasemonkey가 JavaScript로하는 것처럼 소스 코드를 수정할 수는 없습니다.
iglvzx

@iglvzx 나는 그것을 두려워했다. 하지만 이미 그 윤곽선 스크립트가 Youtube 페이지와 임베디드 비디오 코드에 삽입 할 수있는 스크립트를 찾을 수 없습니다.
Bon Gart

1
YouTube 페이지에 동영상을 표시하는 데 사용되는 코드는 그들이 제공하는 HTML과 다릅니다. 나는 확실하지 않다. disablekb 쿼리가 여기에서 작동합니다.
iglvzx

@iglvzx 저기도있다. 다시 말하면, 이것이 11 년 넘게 문제가 존재했던 이유 일 수 있습니다.
Bon Gart

흥미롭게도 Ctrl-l은 Flash 기반 플레이어가 포커스를 갖고 있지 않더라도 위치 표시 줄을 선택하더라도 비디오에서 계속 건너 뜁니다. 나는 여전히 건너 뛰기 앞으로 부분을 억제하고 싶다.
Heptite

1

사용하는 가장 간단한 솔루션 오토 핫키 지도가 될 것입니다. Ctrl + Alt + Firefox에서 YouTube 페이지를 볼 때 :

SetTitleMatchMode, RegEx
#IfWinActive, - YouTube - Mozilla Firefox$
    ^l::SendInput, !d
#IfWinActive

YouTube는 HTML을 바꿀 수 있기 때문에 <title> 언제든지 이름 지정 방식을 사용하면 더 신뢰할 수있는 솔루션은 첫 번째 #IfWinActive 라인 :

#IfWinActive, - Mozilla Firefox$

이것은 모든 Firefox 탭 / 창에 적용되지만 기능면에서 차이를 느껴서는 안됩니다.


내가 다른 핫키 규칙보다 위에 두지 않으면 왜 이것이 작동하지 않는지 아는 사람?
Heptite

다른 단축키에 대해 필요한 return 문이 누락 되었습니까? 나는 자리를 좋아한다. #IfWinActive 내 스크립트 끝 부분에 문제가없는 블록.
iglvzx

Capslock :: 규칙 아래에 있으면 그 안에 무엇이 있는지에 관계없이 작동하지 않는 것으로 보입니다.
Heptite

그걸 긁어. 어떤 위의 규칙은 그것을 어기는 것이다. 이것은 AutoHotkey_L입니다.
Heptite

0

나는 같은 문제가 있었고 http://www.autohotkey.com/ Windows의 Firefox에서 사용하기위한 스크립트. 스크립트는 Firefox가 활성화되어있을 때 ctrl + tab, ctrl + shift + tab 및 ctrl + l 단축키를 제어하고 일반 Firefox 단축키 작업 (다음 탭, 이전 탭 및 URL 도구 모음 활성화)을 항상 수행하도록합니다. 창 모드 및 전체 화면 모드로 작동합니다. 참고 : 스크립트 마우스는 왼쪽 상단 Firefox 창의 모서리 근처에있는 중립 지점을 클릭합니다. 예를 들어 Stylish를 통해 GUI를 변경하여 해당 지점을 덮는 경우 버튼을 누른 다음 클릭 명령의 x / y 값을 수정하여 다른 버튼이 아닌 다른 지점을 대상으로해야 할 수 있습니다. 이 스크립트가 ctrl + l에서만 작동하도록하려면 두 번째 및 세 번째 코드 줄을 제거하십시오.

편집하다: 죄송합니다. 아래의 기본 x / y 값은 Firefox 버튼을 표시하는 방법에 따라 최대화 된 창 모드에서 제대로 작동하지 않을 수 있습니다. 다시 말하지만 x / y를 수정하여 Firefox 버튼 오른쪽의 몇 픽셀과 같이 버튼이 아닌 지점을 타겟팅하십시오.

#IfWinActive, ahk_class MozillaWindowClass
^Tab::
^+Tab::
^l::
SystemCursor("Toggle")
SetDefaultMouseSpeed, 0
MouseGetPos, mx, my
click 2,2
if A_ThisHotkey = ^Tab
 send ^{tab}
if A_ThisHotkey = ^+Tab
 send ^+{tab}
if A_ThisHotkey = ^l
 send ^l
MouseMove, %mx%,%my%
SystemCursor("Toggle")
return
#IfWinActive


; http://www.autohotkey.com/docs/commands/DllCall.htm#HideCursor

SystemCursor(OnOff=1)   ; INIT = "I","Init"; OFF = 0,"Off"; TOGGLE = -1,"T","Toggle"; ON = others
{
    static AndMask, XorMask, $, h_cursor
        ,c0,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13 ; system cursors
        , b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12,b13   ; blank cursors
        , h1,h2,h3,h4,h5,h6,h7,h8,h9,h10,h11,h12,h13   ; handles of default cursors
    if (OnOff = "Init" or OnOff = "I" or $ = "")       ; init when requested or at first call
    {
        $ = h                                          ; active default cursors
        VarSetCapacity( h_cursor,4444, 1 )
        VarSetCapacity( AndMask, 32*4, 0xFF )
        VarSetCapacity( XorMask, 32*4, 0 )
        system_cursors = 32512,32513,32514,32515,32516,32642,32643,32644,32645,32646,32648,32649,32650
        StringSplit c, system_cursors, `,
        Loop %c0%
        {
            h_cursor   := DllCall( "LoadCursor", "uint",0, "uint",c%A_Index% )
            h%A_Index% := DllCall( "CopyImage",  "uint",h_cursor, "uint",2, "int",0, "int",0, "uint",0 )
            b%A_Index% := DllCall("CreateCursor","uint",0, "int",0, "int",0
                , "int",32, "int",32, "uint",&AndMask, "uint",&XorMask )
        }
    }
    if (OnOff = 0 or OnOff = "Off" or $ = "h" and (OnOff < 0 or OnOff = "Toggle" or OnOff = "T"))
        $ = b  ; use blank cursors
    else
        $ = h  ; use the saved cursors

    Loop %c0%
    {
        h_cursor := DllCall( "CopyImage", "uint",%$%%A_Index%, "uint",2, "int",0, "int",0, "uint",0 )
        DllCall( "SetSystemCursor", "uint",h_cursor, "uint",c%A_Index% )
    }
}

2
이것은 지나치게 복잡합니다.
iglvzx

예, Ctrl + I 기능 만 있으면 솔루션이 더 간단합니다. 하지만 youtube는 Ctrl + Tab을 사용하며 그 수정을 찾는 사용자도 위의 내용을 유용하게 사용할 수 있습니다.
only_passing_by

0

더 많은 테스트를 한 후에 위의 iglvzx의 AHK 코드는 Windows의 Firefox에서도 완벽하게 문제를 해결하지 못한다고 생각합니다. 나머지 문제를 재현하려면 다음 단계를 수행하십시오.

  1. 예를 들어 youtube 클립을로드하십시오. http://www.youtube.com/watch?v=a1Y73sPHKxw
  2. 동영상 플레이어의 아무 곳이나 클릭합니다 (예 : 일시 중지 버튼).
  3. 누르기 탭 또는 Ctrl + Tab 또는 Ctrl + I

결과 : ctrl + l은 아무 일도 일어나지 않습니다. 컨트롤 + 탭의 경우 플레이어는 다음 컨트롤로 포커스를 이동하고 두꺼운 노란색 테두리로 표시합니다.

자동 홈 키 스크립트는 비디오 플레이어에 포커스가있을 때 해당 단축키에 대한 youtube의 제어를 무시하지 않습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.