小编web*_*rts的帖子

帮助我说服老师他需要停止教IE过滤器!

问题

为了给你一些背景知识,我目前就读于Mary Hardin-Baylor大学的学生.目前网页设计课程有些......低于标准.我的DHTML老师在Netscape/IE冲突的网站上工作,他教的大部分内容都是弃用的,非语义的HTML或内联代码.他仍然是IE的巨大支持者,并且仍然热衷于学习IE过滤器的学生.从我所看到的,他似乎认为不需要支持多个浏览器.我真的很想看到学校的网页设计部分增长,只要教师仍在教授弃用的代码,它可能不会.我打算给他发一封电子邮件试图说服他放弃下学期课程的IE过滤器部分,并将其替换为学生实际上可以使用跨浏览器的东西.

请求

我需要帮助建立我的论点.

  • 我需要建立一个原因列表,列出为什么不推荐使用过滤器并且不应该使用它们(我相信它们甚至不再支持IE9了).
  • 给出应该实现跨浏览器支持的原因也可能是有利的.
  • 我需要一些我可以引用的信誉良好的来源.这不包括维基百科等网站.

另外,在旁注中,我在这里问的原因之一是因为我没有任何类型的现实编码经验.如果我得到了在同一个网络时代工作过的其他人的支持,它可以为我的论证的合法性创造奇迹.我不希望这听起来像我只是在抨击他的方法,甚至更糟......只是想要失业.

提前感谢您发布任何帮助!我知道这是一个巨大的要求.无论你愿意什么时候,我都很感激.

编辑

我只想指出,我同意一些意见.课程的过滤部分是一个非常小的问题.如果学生进入网页设计职业生涯,还有很多其他问题会更加重要.不幸的是,大多数学生被迫进入这门课程,专门针对CGD专业的学位要求.目前没有专门用于网页设计的专业,校园里可能只有4人实际上正在追求网页设计.这个类的普通Joe可能永远不会产生超过个人网站.这就是说,过滤器解决的版本兼容性和其他问题可能永远不会被使用.

主要的问题不是老师正在教IE过滤器,而是他正在教一个关于过滤器的三周部分.在整个学期中,该类只能通过事件属性查看非常简单的Javascript,如变量,函数,数组,循环和附加事件.我们还没有触及DOM,我们已经过去的东西我们只是轻轻触及.我只想看到该类的最后一部分专用于更普遍有用的信息,如DOM,对象,对象方法和正则表达式.

尽管所有这些都将使文档的大部分内容超出浏览器兼容性,但我很欣赏您所提供的信息.我希望我可以告诉他他做错的一切,但这不仅仅是一封电子邮件.我想一步一步,但至少指出他正确的方向.

对不起,很长的帖子!谢谢

javascript css internet-explorer

12
推荐指数
1
解决办法
287
查看次数

如何在RSpec中检查Nil的变化

所以我很确定这会起作用......

expect { file.send(:on_io) {} }.to change{
  file.io.class
}.from( NilClass ).to( File )
Run Code Online (Sandbox Code Playgroud)

但它失败了这条消息......

result should have initially been NilClass, but was NilClass
Run Code Online (Sandbox Code Playgroud)

胡?

首先,为什么这会以失败告终?其次,我通常知道您可以be_nil使用该nil?方法检查nil .from().to()在RSpec中有一些特殊的方法吗?

ruby null rspec

12
推荐指数
1
解决办法
3972
查看次数

像*+*这样的选择器可以安全使用吗?

我最近遇到了这个CSS选择器,同时试图找到一种方法来轻松区分主要的博客元素,如段落和图像.它的使用示例如下:

.post *+* {margin-top: 15px;}
/* or... */
.post > *+* {margin-top: 15px;}
/* if you don't want the margin to apply to nested elements */
Run Code Online (Sandbox Code Playgroud)

乍一看,它看起来非常有用.所以我的问题是:使用这些选择器有什么缺点?

特别:

  1. 这样的浏览器支持是什么?

  2. 在任何情况下你都不希望文章中的元素之间有均匀的边距,如果没有,是否更容易先声明它然后覆盖或简单地单独声明每个元素?

  3. 这是否有性能问题因为您选择了所有内容两次?

css css-selectors

11
推荐指数
1
解决办法
957
查看次数

在File对象上重新打开流

假设你关闭一个红宝石File对象

f = File.open('testfile')
f.close
f.each_byte { ... } #=> IOError: closed stream
Run Code Online (Sandbox Code Playgroud)

我知道你可以重新打开流f = File.open(f),但有没有办法通过IO对象上的方法重新打开流?

例如

f.close
f.open_again
f.each_byte { ... }
Run Code Online (Sandbox Code Playgroud)

ruby io

3
推荐指数
1
解决办法
2985
查看次数

在Ractive.js中的onrender vs init

我最近开始尝试Ractive.js.我对它的组件特别感兴趣.我立即注意到的一件事是许多例子都在使用该init选项.但是,当我尝试init在我的代码中使用时,我会收到弃用通知,然后建议使用onrender.onrender然而init,其中的例子少得多,而且一些功能this.find在内部没有onrender.我查看了Github问题,但是没有找到任何有关此更改背后的推理或者选择特定于组件的元素的建议路径是什么.

我创建了一个测试笔来尝试使用新API创建一个递归组件,但我不得不求助于使用jQuery和一个未记录的fragmentapi来选择我需要操作的特定DOM节点.我觉得这反对Ractive期望你做的事情,但我无法弄清楚现有文档对我的期望.

期望initonrender选项之间的主要区别是什么以及如何onrender处理组件中的特定元素及其事件的操作?

javascript ractivejs

3
推荐指数
1
解决办法
1049
查看次数

有没有办法在构造函数中使用锁定的标准输入和输出,只要你正在构造的结构生存?

我正在建立一个PromptSet可以连续问一系列问题的人.出于测试原因,它允许您传递读写器而不是直接使用stdin和stdout.

因为stdin和stdout是常见的用例,所以我想创建一个默认的"构造函数",允许用户生成一个PromptSet<StdinLock, StdoutLock>不需要任何参数.这是迄今为止的代码:

use std::io::{self, BufRead, StdinLock, StdoutLock, Write};

pub struct PromptSet<R, W>
where
    R: BufRead,
    W: Write,
{
    pub reader: R,
    pub writer: W,
}

impl<R, W> PromptSet<R, W>
where
    R: BufRead,
    W: Write,
{
    pub fn new(reader: R, writer: W) -> PromptSet<R, W> {
        return PromptSet {
            reader: reader,
            writer: writer,
        };
    }

    pub fn default<'a>() -> PromptSet<StdinLock<'a>, StdoutLock<'a>> {
        let stdin = io::stdin();
        let stdout = io::stdout();

        return PromptSet {
            reader: stdin.lock(),
            writer: …
Run Code Online (Sandbox Code Playgroud)

stdin stdout lifetime rust

1
推荐指数
1
解决办法
1046
查看次数

什么是"+ id +"用于?

这是什么?:

document.getElementById("+id+")
Run Code Online (Sandbox Code Playgroud)

我已经看到这在其他网站上的代码中多次使用,我想知道它的具体用途是什么,以及是否有替代使用此代码.

---编辑---

是我最近看到的其中一个网站的示例.

javascript

0
推荐指数
1
解决办法
118
查看次数