ExpressionEngine이 iframe 클라이언트 측에서 SRC URL을 제거하는 이유는 무엇입니까?

StackOverflow https://stackoverflow.com/questions/19840622

문제

ExpressionEngine은 iframe의 소스 URL에서 일부 매개 변수를 제거하는 것 같습니다. 이것은 서버가 아닌 브라우저에서 발생합니다.

해당 페이지의 HTML 소스를 볼 때 iframe 소스가 정확합니다. 콘솔에서 볼 때 HTML 소스와 동일하지 않습니다.

요소 콘솔이 표시됩니다.

<iframe frameborder="0" height="166" scrolling="no" src="http://w.soundcloud.com/player/?wmode=transparent" width="100%"></iframe>

HTML 소스는 다음을 보여줍니다.

<iframe frameborder="0" height="166" scrolling="no" src="http://w.soundcloud.com/player/?url=http%3A//api.soundcloud.com/tracks/112438993&amp;color=ff6600&amp;auto_play=false&amp;show_artwork=true" width="100%"></iframe></div>

브라우저의 요소 콘솔에서 소스를 수동으로 변경하면 Iframe이 문제없이로드됩니다.

SRC를 제거하는 JavaScript가 있다고 생각하지만 찾을 수 없습니다. 성공하지 않고 같은 문제를 겪는 사람을 위해 Google을 사용하여 검색하고 검색했습니다.

문제의 URL은 다음과 같습니다. http://rebelnoise.com/articles/album-debut-in-december-for-irish-garage-popsters-dott

이것은 모든 SoundCloud 및 Spotify 링크에 대해 발생합니다.

Spotify 예 : http://rebelnoise.com/articles/black-flags-what-the-the-bands-first-album-of-material-since-1985

감사!

편집하다:

  1. 직감에, 나는 소스 URL을 https : //에서만 // ---로 변경하려고 시도했습니다.
  2. wmode = 투명 쿼리 문자열이 소스에 있지 않고 콘솔에 존재한다는 것을 알았습니다 ... JavaScript 함수가 투명 쿼리 문자열로 덮어 쓰고 있는지 궁금 했으므로 다음과 같이 내 전체 URL에 추가하려고 시도했습니다.

    <iframe frameborder="0" height="166" scrolling="no" src="//w.soundcloud.com/player/?wmode=transparent&url=//api.soundcloud.com/tracks/112438993&amp;color=ff6600&amp;auto_play=false&amp;show_artwork=true" width="100%"></iframe>
    
  3. 흥미로운 : 나는 전체 페이지와 리소스를 데스크탑에 저장하고 그렇게 실행하려고 시도했습니다. 모든 것이 작동하는 것처럼 보이므로 매우 당황했습니다.
  4. 문제를 찾는 데 더 가깝습니다. wmode = 투명한 사람이 DOM 전체에 걸쳐 SRC에 추가되는 것으로 보이므로 과거에 일부 더미 가이 사이트를 깨고이 모든 문제를 일으키기 위해 나쁜 JavaScript 코드를 추가했는지 궁금합니다. 이제 범인 코드를 찾으십시오!
도움이 되었습니까?

해결책

좋아, 나는 Dunce가 패턴을 더 빨리 발견했을 것 같은 느낌이 든다.

바닥 글에는 모든 SRC 파일에 투명한 WMode = 투명한 코드가있었습니다. 존재하는 쿼리에 추가되지 않았으며 새 쿼리 문자열로 대체했습니다.

나는 그 코드를 제거했고 이제 모든 것이 작동하고 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top