2011-08-11 4 views
0

이 질문은 끝날지 모르지만 나는 약간의 브레인 스토밍 세션을 찾고 있습니다.AJAX 또는 AJAX로

내 기사의 포트폴리오 사이트를 설정 중이며 RSS 피드를 통해 게시 된 사이트의 모든 기사의 피드를 바로 가져올 예정입니다.

이 사이트는 Wordpress를 사용하므로 기사를 제공하는 사이트를 지정하기 위해 단축 코드를 사용할 것입니다. AJAX 또는 PHP를 사용하여 RSS를 가져 와서 구문 분석하는 질문입니다.

RSS 피드의 url을 data 속성 인 data-content-url = ''로 설정하여 단축 코드를 사용할 수 있습니다. 또는 PHP에서 파싱 기능을 간단하게 작성할 수 있습니다. 단문 파서. 참고로, PHP에서 non-js 사용자를 위해 파싱 할 것입니다. 질문은 AJAX의 점진적인 향상을 방해해야하는지 아닌지에 관한 것입니다.

AJAX는 페이지를로드 한 다음 나중에 피드를 가져올 수 있기 때문에 AJAX는 페이지 로딩 시간을 단축 할 수있는 장점이 있습니다. 그러나 어쨌든 PHP에서 단축 코드로 작업 할 때 나는 단지해야한다고 생각합니다. 내가 그곳에있는 동안 그것 모두. 나는 정직 경우 AJAX를 할 원하는에 대한 나의 주된 이유는 AJAX 항상 내가 같은 일을해야합니다 여부를 묻는 질문으로 .when.done

+0

이동하십시오. 마음에 드는지보십시오. 건설적이지 않은 것으로 결론 지었다. – Fosco

+0

이것은 블로그가 아닙니다. 정말 Q & A입니다. 이에 대한 더 나은 스택 교환 포럼이있을 수 있습니다. –

+0

나는 내 대답에 열심히 일했기 때문에 사람들이 이것을 닫지 않기를 바란다! :) –

답변

1

에 새로운 여러 요청 API를 시도하는 것입니다.

당신은 AJAX에 의존하지 않는 방식으로 애플리케이션을 만들어야합니다. 이것은 js가 작동하지 않는 경우 또는 다른 것이 잘못 될 경우 어떻게 될지와 같은 많은 이유입니다. 모두가 자바 스크립트를 사용한다고 가정하면 사용을 중지 한 사람들의 약 5 %가 여전히 손실됩니다. 가장 좋은 디자인은 AJAX를 웹 사이트의 확장으로 사용하는 것입니다. 그게 무슨 뜻이야?

<a href="some_page.html" ajax="true">To another page</a> 

기본 HTML이 필요합니다. 여기에 사용자가 자바 스크립트를 사용해야하는 것은 없습니다.

지금 위의 디자인으로

$("a[ajax=true]").click(function(){ 
    $("#content").load(this.url + " #content > *); 
}); 

을 할 수있는 활성화 JS를 못하는 사람들에 대해 위의 환경을 개선하기 위해, 모두가 당신의 웹 사이트를 사용 하바 더 나은 경험을 볼 활성화 JS 사람들과 할 수 있습니다.

또한 .load() 메서드를 사용하여 원격 페이지의 일부를로드 할 수 있습니다. 이렇게하면 여러 페이지를 만들 필요가 없습니다.

+1

@Amir의 말에 덧붙여 [Unobstrusive JavaScript] (http://en.wikipedia.org/wiki/Unobtrusive_JavaScript)를 읽으십시오. 비록 당신이 사용자의 5 %를 잃어버린 여유를 가질 수 있다고하더라도, 웹 거미에 대해서 생각해보십시오. –

1

아미르는 좋은 지적을했습니다. 현재 제가 처음부터 매우 가치있는 사이트의 재구성/재 설계 작업을하고 있다고 감안할 때 AJAX 사용은 신중하게 고려한 것입니다. 가능하다면 AJAX를 사용하는 것을 선호하지만 특히 2 가지 상황이 있는데, 적어도 사용하지 않거나 적어도 확실한 반향이 있는지 확인합니다.

첫째, 불행히도, 아미르의 예입니다. 페이지는 전체 페이지를 제공하는 페이지에 대한 실제 요청과 함께로드되어야합니다. 때로는이 일을하지 않는 유일한 곳은 SEO에 대한 걱정이없는 관리자 인터페이스입니다. Amir은 페이지가 AJAX를 통해로드되지 않는 대체 환경을 제안하지만 실제로 사이트 및 사용자 환경의 복잡성을 높이는 경우입니다 (뒤로 버튼이 작동하지 않거나 브라우저 기록을 다루는 라이브러리를 사용하여 AJAX 버전에서 뒤로/앞으로 기능을 유지해야합니다.)

내가 항상 대체물이 있는지 확인하려고 시도하는 두 번째 상황은 모든 종류의 양식입니다.의견, 계산기 또는 일부 수익 창출을 위해 양식을 사용하는 것은 사용자가 귀하와 사이트간에 상호 작용하는 중요한 방법입니다. 이상적으로, 가능하고 적절할 경우 양식을 AYAX로 (개인 의견)으로 작성해야합니다. 좋은 로딩 GIF 등을 추가 할 수 있기 때문에 일반적으로 사용자 경험이 향상됩니다. 좋은 사용자 피드백은 주요 플러스이며 AJAX가 아닌 버전보다 훨씬 뛰어납니다. 페이지가 나올 때까지 브라우저를 계속 볼 수 있습니다.

양식이 주요 상호 작용 지점이므로, 어긋나게 할 여유가 없으므로 항상 AYAX없이이 작동해야합니다. 5 %의 사용자조차도 문제가되지 않습니다. (일부는 실제로 프로덕션 환경에서 자체 사이트를 테스트하고 있습니다. -P) javascript가 비활성화되어 있습니다. 자바 스크립트에 오류가 있으면 어떻게 될까요? 아니면 모든 브라우저에 존재하지 않는 함수를 다시 사용했거나 일부 브라우저에서 자바 스크립트 오류가 발생했을 수 있습니까? 이러한 상황에서는 양식이 여전히 작동하기를 원하므로 비 AJAX 버전으로 전환하는 것이 중요합니다.

내 충고는 항상 AJAX 100 %없이 작동하도록 사이트를 구축 한 다음 AJAX를 사용하여 개선 할 수 있다고 생각되는 장소를 찾아 맨 위에 레이어로 추가하는 것입니다. 이것은 당신에게 자바 스크립트 밑에 자신감을 부여하는 데 도움이됩니다, 당신은 사이트 단단한 바위입니다.

+0

이것은 트위터와 페이스 북이 될 것입니다. 모든 망할 페이지가 악의적 인 사람입니다. 왜? –