2017-03-09 1 views
0

사용자가 클릭 할 때 새 탭에서 열리는 HTML 코드의 비디오 링크가 있습니다. 내가하고 싶은 일은 사용자가 전체 비디오 (또는 그 중 절반)를 보았을 때 첫 페이지의 링크 스타일이 변경된다는 것입니다 (예를 들어 색상 변경). 그러나 사용자가 전체 비디오를 보지 않으면 첫 번째 페이지의 링크 스타일에 아무 것도 나타나지 않습니다. 자바 스크립트로 어떻게 할 수 있습니까?다른 페이지에서 특정 조건이 발생한 후에 요소의 스타일을 변경합니다.

답변

0

최선의 방법은 변수를 localstorage 또는 sessionstorage (효과를 지속시키려는 기간에 따라 다름)으로 설정하는 것입니다. 동영상의 끝 부분에있는 localstorage에 키를 추가하고 현재 상태 인 localstorage을 기반으로 보내는 페이지의 모든 링크 스타일을 변경해야합니다.

그러나 이것은 복잡하고 불필요한 것으로 보이며 복잡성이 사용자 경험 냄새의 지표가 될 수 있다고 생각합니다. 동영상을 재생하는 방법과 사용자가 링크 자체에서이를 볼 수있는 것이 중요한 이유에 대해 더 많은 정보를 제공 할 수 있다면 도움이 될 것입니다.

+0

원래 질문에서 수집 한 것보다 간단한 유스 케이스가 있다고 생각합니다. DOM 구조를 보면 링크의 색상 부분은 실제로 링크 내부의 다른 DOM 요소이며 서버 수준에서 거의 확실하게 렌더링됩니다. 비디오를 끝내고 페이지가 렌더링 될 때 배치 할 아이콘을 결정하는 것을 저장한다는 것을 의미합니다. –

+0

아니라 그것은 다음과 같은 예를 살펴하는 것이 가장 좋습니다 : 다음 칸 아카데미 웹 사이트에 https://www.khanacademy.org/math/differential-equations/first-order-differential-equations 당신이 (과정을보고 비디오)로 이동 한 다음 원본 페이지 (콘텐츠 목록을 보여주는)로 돌아 가면 코스 제목 옆의 작은 원이 파란색으로 바뀌는 것을 볼 수 있습니다. 그러나 전체 비디오를 보지 않으면 원 색상이 변경되지 않습니다. 이런 식으로 당신은 당신이 보았던 코스와 그렇지 못한 코스를 알 수 있습니다. 나는 비슷한 효과를 얻고 싶다. 그게 도움이되는지 모르겠다. :) – Meysam

+0

위의 내 의견을 참조하십시오; 이것을 추가하면 놓치지 않습니다. –

관련 문제