小编Mar*_*rko的帖子

使用C#进行省略(以完整单词结尾)

我正在尝试在Umbraco中实现省略号,要求是15个字符的介绍文本,但总是以一个完整的单词结束.

我想过使用XSLT,但后来意识到我可以使用一个用C#编写的简单扩展方法.

我可以很容易地对文本进行子串并追加"......",但是我不得不用一个完整的单词来结束它.这是我的代码到目前为止(非常复杂:p)

public string Ellipsis(string text, int length)
{
    return text.Substring(0, length) + "...";
}
Run Code Online (Sandbox Code Playgroud)

示例文本

Lorem ipsum dolor坐在amet,amet consectetur adipiscing elit.

如果我们实现上面的省略号方法(长度= 15),输出看起来像

Lorem ipsum dolor sit amet,amet consectetur adipi ...

我想确保没有任何单词被切片,所以输出应该是这样的

Lorem ipsum dolor坐在amet,amet consectetur adipiscing ...

任何帮助赞赏.

编辑

运行下面代码的示例后,如果省略号长度在最后一个单词上结束,则根本不显示任何文本.

这是输出,见第56-60行

0 : Lorem...
1 : Lorem...
2 : Lorem...
3 : Lorem...
4 : Lorem...
5 : Lorem...
6 : Lorem ipsum...
7 : Lorem ipsum...
8 : Lorem ipsum...
9 : Lorem ipsum...
10 : …
Run Code Online (Sandbox Code Playgroud)

c# string substring ellipsis

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

IE9是否支持3D CSS变换?

有人在Internet Explorer 9上运行测试以运行3D CSS变换吗?如果是这样,他们是否成功了?

我找不到任何关于它的信息,当然Chrome/Safari/Firefox已经添加了对它的支持:)

一些邪恶的新3D CSS语法

translate3d(x,y,z),translateZ(z)
在x,y和z中移动元素,然后只在z中移动元素.正z面向观众.与x和y不同,z值不能是百分比.

scale3d(sx,sy,sz),scaleZ(sz)
缩放x,y和z中的元素.z比例影响转换子项中沿z轴的缩放.

rotateX(角度),rotateY(角度),rotate3d(x,y,z,角度),
前两个表单只是围绕水平轴和垂直轴旋转元素.角度单位可以是度(度)弧度(弧度)或梯度(grad).最后一种形式允许您围绕3D空间中的任意向量旋转元素; x,y和z应指定您想要旋转的单位矢量(我们将为您标准化).

perspective(p)
此函数允许您将一些透视放入转换矩阵.有关p的解释,请参见下文.通常透视是通过-webkit-perspective属性应用的,但是此函数允许您为单个元素获取透视效果,例如:

-webkit-transform: perspective(500px) rotateY(20deg);
Run Code Online (Sandbox Code Playgroud)

matrix3d(...)
此函数允许您以列为主的顺序指定16个值的原始4×4齐次变换矩阵.玩得开心!

取自这里.

html css 3d

8
推荐指数
1
解决办法
2万
查看次数

什么是iPhone屏幕分辨率?

我知道这已被问过,但我仍然感到困惑.

我正在尝试为iPhone构建一个简单易用的页面:顶部的徽标,电话号码,地址以及占据整个屏幕的BG(不重复).

当我运行一个打印screenwidth和screenheight的脚本时,我得到了:320px*480px.

但是,当我创建这些精确尺寸的div时,它很小.是什么赋予了?如果检测到的分辨率的整个大小的盒子不占用整个屏幕吗?

所以,如果我正在为iPhone设计一个页面,我希望它能在Safari(在iPhone上)占据整个屏幕,我应该为它设计什么样的分辨率呢?

我正在使用运行iOS 4.0的iPhone 3G作为我的测试设备.

谢谢你的帮助.

iphone resolution screen mobile-safari

7
推荐指数
2
解决办法
1855
查看次数

复制XSLT变量

我正在研究Umbraco XSL样式表,我很困惑.

基本上,我有一个参数,我测试并使用它的值,如果它存在,否则我使用默认参数$currentPage.

这是参数

<xsl:param name="source" select="/macro/sourceId" />
<xsl:param name="currentPage" />
Run Code Online (Sandbox Code Playgroud)

这是变量

<xsl:variable name="current">
    <xsl:choose>
        <xsl:when test="$source &gt; 0">
            <xsl:copy-of select="umbraco.library:GetXmlNodeById($source)" />
        </xsl:when>
        <xsl:otherwise>
            <xsl:copy-of select="$currentPage" />
        </xsl:otherwise>
    </xsl:choose>
</xsl:variable>
Run Code Online (Sandbox Code Playgroud)

这就是我使用它的地方

<xsl:for-each select="msxml:node-set($source)/ancestor-or-self::* [@isDoc and @level=$level]/* [@isDoc and string(umbracoNaviHide) != '1']">
... code here ...
</xsl:for-each>
Run Code Online (Sandbox Code Playgroud)


简而言之

这有效

<xsl:variable name="source" select="$currentPage" />
Run Code Online (Sandbox Code Playgroud)

事实并非如此

<xsl:variable name="source">
  <xsl:copy-of select="$currentPage" /> <!-- Have tried using <xsl:value-of /> as well -->
</xsl:variable>
Run Code Online (Sandbox Code Playgroud)

那么如何在不使用select=""属性的情况下复制变量.

更新:我尝试过使用另一种方法(见下文),但我得到一个超出范围异常的变量.

<xsl:choose> …
Run Code Online (Sandbox Code Playgroud)

xml xslt variables umbraco

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

窗口中div的垂直+水平居中的最简单方法是什么?

给定div已知尺寸,比如说width: 300px; height: 200px,将屏幕垂直和水平放置在屏幕中间的最简单方法是什么?这里的例子

我对最新的Firefox感兴趣(不需要IE黑客).

只有CSS,没有Javascript.

html css alignment vertical-alignment

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

Jquery - 如果光标位于文本字段的开头/结尾

我有一个textarea,我想检查光标是在开始还是在结束(我不需要当前的位置).
有人知道一个简单的jQuery解决方案吗?

提前致谢!
彼得

javascript jquery textarea selection textselection

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

MonoTouch,MonoTouch的未​​来以及我是否应该将它用于iPhone应用程序(而不是Objective-C)

我决定开始编写一个iPhone应用程序并来自ac #background,我以为我会开始使用mono来开发它.

虽然这个问题可能是主观的,但我很乐意为您提供一些指导.

使用这种技术开发我的应用程序是安全的,还是应该购买一些书籍并开始学习目标C?

我知道Adobe将发布一个允许你使用Flash CS5构建iPhone应用程序的功能,但这并没有持续多久.

感谢您的反馈.

马尔科

c# iphone xamarin.ios

6
推荐指数
2
解决办法
1018
查看次数

ASP.NET自定义验证器+ WebMethod + jQuery

我正在尝试实现一个.NET自定义验证器,它使用$ .ajax在同一页面上查询WebMethod并返回一个布尔值来指示结果是true还是false.

我使用的WebMethod非常简单

[WebMethod()]
public static bool IsPromoValid(string code)
{
    string promoCode = "ABCDEFG";
    bool result = code.ToLower() == promoCode.ToLower();
    return result;
}
Run Code Online (Sandbox Code Playgroud)

CustomValidator看起来像这样

<asp:CustomValidator ID="cvPromoCode" Display="None" ControlToValidate="txtPromoCode" runat="server" ClientValidationFunction="validatePromo"
    ErrorMessage="The promo code you entered is incorrect" OnServerValidate="ValidatePromoCode" />
Run Code Online (Sandbox Code Playgroud)

和简单的$ .ajax()ClientValidation函数

function validatePromo(src, args) {
    $.ajax({
        type: "POST",
        url: "Register.aspx/IsPromoValid",
        data: "{'code': '" + args.Value + "'}",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function (msg) {
            args.IsValid = msg.d;
        }
    });
}
Run Code Online (Sandbox Code Playgroud)

问题是页面立即验证,实际上并没有等待ajax调用完成.如果页面上有任何其他错误,它会显示验证摘要,但从不显示自定义验证程序的错误消息.

我可以看到在Firebug中进行的AJAX调用,它会重新响应正确的响应(在这种情况下为true或 …

c# asp.net validation jquery customvalidator

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

在iOS中编写新电子邮件时获取附加图像的Content-ID

MFMailComposeViewController在iOS中使用它来创建新的动态电子邮件,但在尝试使用内联图像时遇到了问题.

我首先尝试将图像添加为base64编码的字符串,即

<img src="data:image/png;base64, blahblahblah" /> 
Run Code Online (Sandbox Code Playgroud)

但我只能在iPad上查看,而Outlook/Entourage会忽略它,即使我可以在源代码中看到它!

所以现在我正在尝试将图像添加为附件并通过其内容ID链接到它,即

<img src="cid:BF6E8B41-4D74-419E-B55E-8F18A07381AE" id="BF6E8B41-4D74-419E-B55E-8F18A07381AE" width="509" height="220">
Run Code Online (Sandbox Code Playgroud)

但是不知道如何获得cid通过代码!
当我使用附加图像时AddAttachmentData,图像会到达底部并实际生成<img />带有cid 的标签!

此外,此ID似乎随每个新电子邮件而变化.上面的那个是我的第一次尝试,然后我发送了另一个并且Content-ID改为

<img src="cid:59EBFDED-2A31-4787-BF67-9D9ED0FF2B39" id="59EBFDED-2A31-4787-BF67-9D9ED0FF2B39" width="509" height="220">
Run Code Online (Sandbox Code Playgroud)

我必须这样做的原因是因为这是一个动态生成的图像,它需要位于电子邮件模板中.

编辑
我开始认为这是不可能的.我一直在研究几个小时,看起来iOS不会让你附加图像并通过它的CID链接到它.谢谢Apple -_-

email iphone attachment ipad ios

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

用一串长度相同的字符替换RegEx

我想用一系列具有相同字符数的重复字符替换XML标签.

例如:

<o:LastSaved>2013-01-21T21:15:00Z</o:LastSaved>
Run Code Online (Sandbox Code Playgroud)

我想用以下代替:

#############2013-01-21T21:15:00Z##############
Run Code Online (Sandbox Code Playgroud)

我们如何使用RegEx呢?

python regex

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