Замените пустое место на "", используя Jquery - PullRequest
3 голосов
/ 15 октября 2010

Я смотрю в Интернете, но ничего полезного не нахожу.: (

У меня проблема, которую я не понимаю. Я уверен, что я делаю что-то не так, но я плохо знаю синтаксис jQuery, чтобы понять, что я не делаюправильно.

Я использую анимацию с JS и CSS 3, и у меня возникают проблемы с пустыми пробелами между словами, и для решения этой проблемы мне нужно найти способ замены символов внутри строки текстачто-то еще. Как пустой пробел с, или как тест, который я пытался сделать "n" с "xxxxx".

Я думаю, что я делаю это:

  1. при загрузке страницы
  2. Изменить строку любого абзаца с классом .fancy-title, который содержит "n", с текстом "xxxxx"

Итак:

$(document).ready(function(){
    for(i=0; i< myLength+1; i++){
        var charCheck = $(".fancy-title").text()[i];
        if(charCheck == "n"){
            charCheck.replace("n", "xxxxxxxx");
        }
    }
});

Но я получаю сообщение об ошибке:

charCheck.replace ("n", "xxxxxxxx"); это не такфункция

Я использую jquery

и другие сценарии, основанные на jquery, для создания анимации, вращения имасштабирование ... и все они находятся в заголовке с jquery, чтобы загрузить.

Что я делаю не так?Манипулирование в jQuery требует определенного расширения .js?Я понял, что это была базовая возможность jQuery, и, глядя на другие примеры, я получаю такую ​​же ошибку.

Я даже пытался

if(charCheck == "n"){
   $(".fancy-title").text()[i] == "&nbsp;"
}

Но просто модификация это не такприменяется на странице.Я тоже пробовал с innerHTML :( Я чувствую себя таким некомпетентным ...

Заранее благодарю за любую помощь.

Ответы [ 4 ]

5 голосов
/ 15 октября 2010
$(document).ready(function(){
    $(".fancy-title").each(function(i){
        var text = $(this).html();
        $(this).html(text.replace(/ /g, "&nbsp;"));
    })
});
4 голосов
/ 15 октября 2010

У вас нет проблем с заменой детали:).

$(document).ready(function(){
    $(".fancy-title").each(function () { //for all the elements with class 'fancy-title'
         var s=$(this).text(); //get text
         $(this).text(s.replace(/n/g, 'xxxxxxxx')); //set text to the replaced version
    });
});

Просто быстрый пример, надеюсь, что это сработает.

3 голосов
/ 15 октября 2010

Вы пробовали стиль css white-space:pre вместо замены '' на ''?http://de.selfhtml.org/css/eigenschaften/ausrichtung.htm#white_space

0 голосов
/ 15 октября 2010

Кажется, вы пытаетесь заменить один символ новой строкой.

Возможно, вы сможете получить правильный результат, отбросив итерацию и просто вызвав .replace для объекта jQuery.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...