이 흥미로운 문제는 다음과 같습니다
는 명확한 설명은 이미지를 참조하십시오. 나는 편리한 자바 스크립트
splice 메소드로 접근 할 것이다. 스플 라이스를 사용하여 배열의 항목을 삽입하고 삭제할 수 있습니다. 나는 감찰관을 열고 아래에 쓴 몇 가지 예제를 시도해 보길 권한다.
먼저 jQuery를 사용하여 헤더를 선택한 다음 html 콘텐츠 문자열을 조작합니다. 난 당신이 조작 할 특정 헤더가 클래스있을 것이라는 점을 가정 그리고 난 '동적'대체했습니다 스플 라이스는 원래의 배열을 변경하는 것이
var header = $("h1.dynamic").text();
=> "Header with some other stuff"
var header_as_array = header.split(" ")
=> ["Header", "with", "some", "other", "stuff"]
var first_half = header_as_array.splice(0, header_as_array.length/2)
명심하십시오,이 시점에서 너무 :
first_half = ["Header", "with"]
header_as_array = ["some", "other", "stuff"]
지금, 당신은 다시 함께 가입 할 수 있으며과 같이 스팬로 포장 :
var first = '<span class="first_half">'+first_half.join(" ")+'</span>';
var second = '<span class="second_half">'+header_as_array.join(" ")+'</span>';
var finished = first+" "+second;
마지막으로, 우리는 jQuery로 헤더로 다시 우리의 완성 된 문자열을 놓을 게요 :
$("h1.dynamic").html(finished);
필자가 작성한 방식으로 홀수 개의 단어가있는 머리글은 항상 후반부가 더 긴 절반으로 표시됩니다. 당신은 당신이 할 수있는 주위에 다른 방법으로 선호하는 경우가 아닌 정수 값이 잘립니다 기본적으로
var splice_location = Math.ceil(test_as_array.length/2);
var first_half = header_as_array.splice(0, splice_location);
을, 그러나 여기에서 우리는 아래로 대신 물건을 모아 천장 기능을 사용하고 있습니다.
제 의견으로, 플러그인은 엄청난 과잉입니다. :-) – Benson
@Benson 그것의 공정한 점. 아마도 jquery는 한 기능의 기능을 과도하게 사용합니다. 플러그인 자체는 어쨌든 사용하는 코드를 래핑하는 기능 일 뿐이지 만 재사용하기 쉽습니다. 당신이 원한다면 그것을 뜯어 낼 자유롭게 해주십시오. – johnhunter
추신 : 플러그인은 20 줄입니다 - 빈 것들을 포함합니다 : D – johnhunter