-1
필자는 기능을 트리거하는 링크를 자동으로 다시 작성하여 눈에 잘 띄지 않는 JavaScript 코드로 변환해야합니다.주어진 코드를 JavaScript의 함수로 다시 작성하는 가장 좋은 방법은 무엇입니까?
예 :
link_to_function 'hey', "alert('hey')"
가된다는 :
<a href='#' onclick="alert('hey')"> hey </a>
내 아이디어는 HTML 요소 기준을 모든 관련된 코드를 저장하는 JS에서 객체를 생성한다.
storageCode[rndReference] = new Function(code)
각 문자열 :
<a href='#' data-href='rndReference'> hey </a>
와 JS에서
합니다 (code
변수가 내가 마크 업에서 밖으로 제거 한 JS 코드입니다) : 그런 다음 깨끗하고 눈에 거슬리지 예에서 전 예 변환 코드를 함수로 부르기 위해 새로운
Function(code)
으로 전달됩니다.
이 접근 방식의 문제점은 무엇입니까? 어떤 접근 방식이 더 좋을까요?
을 CoffeeScript 파일에 다음
을 :
이된다. 임의의 코드를 실행하는 방법에 대해 묻고 싶습니다. 아이디어는 도우미를 통해 전달됩니다. link_to_ujs (http://www.github.com/gagoar/link_to_ujs) –
link_to_ujs가 명백하게 "눈에 거슬리는 자바 스크립트"가 아니라는 점에서 link_to_function을 대체하십시오. 이는 눈에 띄지 않고 링크의 onclick 이벤트에서 실행됩니다. 이 방법이 효과가 있다면 그것을 찾으십시오. –
link_to_ujs는 코드를 JavaScript 개체에 넣고 마크 업의 data-ref를 해당 data-ref를 바인딩하는 코드로 둡니다. 그것은 ujs 모든 방법입니다. 이것은 그 질문의 예와 정확히 같습니다. 두 번째 사람 –