Переопределение стилей | JQuery - PullRequest
1 голос
/ 17 декабря 2011

Этот код отлично работает здесь

http://jsfiddle.net/LH7sy/11/

Он пытается найти sml( и )sml в элементах с классом uppercase и заменить их на <span style="text-transform:none"> и</span>

но когда я пытаюсь поместить все это в один файл, HTML-файл, он просто не будет работать!

Если я буду использовать что-то другое вместо $ (документ).готовы ?Что не так?

<html>
<head>
<script type="text/javascript">
<!--
$(document).ready(function () {
     $('.uppercase').each(function() {
        var end = false;
        var s = $(this).html();
        while(end == false) {
            var p1 = s.indexOf('sml(');
            var p2 = s.indexOf(')sml');
            if (p1 != -1) { /* if '(' is found in the string */
                var result = s.substring(0,p1);
                result += '<span style="text-transform:none">';
                result += s.substring(p1+4,p2);
                result += '</span>'                        
                result += s.substr(p2+4);
                s = result;
            } else {
                end = true;
            }
        }
        $(this).html(result);
    })
})
-->
</script>

<style type="text/css">
<!--
.uppercase:hover {
    text-transform:uppercase;
}
-->
</style>
</head>
<body>

  <span class="uppercase">
     everything uppercase except sml(this)sml and sml(this too)sml
  </span>

</body>
</html>

Ответы [ 2 ]

1 голос
/ 17 декабря 2011

Стиль действительно должен быть в <head> документа.Вы также должны убедиться, что вы действительно загружаете jQuery, который не указан в вашем коде.

1 голос
/ 17 декабря 2011

Вам необходимо включить ссылку на jQuery перед вашим document.ready звонком:

<script type='text/javascript' src='http://code.jquery.com/jquery-1.7.1.js'></script>
...