0

输入单词时(不是输入文本框,只是输入),是否可以使用 jquery 切换到新样式表?我正在尝试在我的网站上创建一个复活节彩蛋,但我不确定从哪里开始切换样式表。

4

3 回答 3

1

你的问题有几个部分。

  1. 要侦听不是来自输入字段的击键事件,您可以将事件处理程序附加到文档对象并侦听该keypress事件,您可以通过查看该事件的事件数据结构来收集键入的键。在 jQuery 中,您可以使用该$(document).keypress(fn)方法。

  2. 要更改样式,最简单的方法是添加一个 CSS 类,以便某个容器,并具有一组样式规则,当该类出现在容器上时,这些规则会改变事物。这比实际更改样式表更简单,更容易跨浏览器工作。在 jQuery 中,您可以只使用该$("#whatever").addClass("foo")方法。

于 2013-02-02T06:35:44.287 回答
0

你可以试试这个:

<link id="css1" href="normal.css" type="text/css" rel="stylesheet">

<script>
 if(something written)
  document.getElementById('css1').href = 'another_one.css';
</script>

something written是您检查点击事件还是您想要的任何东西

于 2013-02-02T06:19:42.237 回答
0

试试这个:http: //jsfiddle.net/UYapL/2/

$('button').click(function () {
    $('[rel="stylesheet"]').attr('href', 'new.css');
    alert($('[rel="stylesheet"]').attr('href'));
});

// with keycontrols

$(window).keyup(function (e) { // (ctrl+i)
    if (e.ctrlKey && e.which == 73) {
        $('[rel="stylesheet"]').attr('href', 'new.css');
        alert($('[rel="stylesheet"]').attr('href'));
    }
});

我不确定您是否正在寻找这样的东西:

// for specific word g=71 e=69 o=79
$('body').append('<span id="code" style="display:none;"></span>');
$(window).keyup(function (e) {
  wrd = e.which;
  code = $('#code').append(wrd);
  if ($('#code').text()=='716979') { // geo
    $('[rel="stylesheet"]').attr('href', 'new.css');
    alert($('[rel="stylesheet"]').attr('href'));
    $('#code').text(''); // reset it here.
  }
});
于 2013-02-02T06:34:08.927 回答