昨天修改回复样式。效果如下图:
回复界面
=============================
修复一BUG
-- 提取经验详细信息时,会报错。因为从数据库没获取到对象,为null。
控制层 .cs
/// <summary>
/// 项目经验分享详细页面
/// </summary>
/// <param name="tid">经验GUID </param>
/// <returns></returns>
public ActionResult ProjectExperienceDetails(string tid)
{
var backurl = Request.UrlReferrer; //记录前页URL
var editExperienceShare = ExperienceShare.GetExperienceShareById(tid);
if (editExperienceShare == null)
{
TempData["error"] = "此数据出错...已通知系统管理员!";
return Redirect(backurl.ToString()); //如果对象为空,则返回上一页。并将错误信息传过去。
}
return View(editExperienceShare);
}
前页 - 经验分享列表 - .cshtml
@{
var message = TempData["error"];
if(message!=null)
{
Response.Write("<script>alert('"+ message.ToString() + "')</script>");
TempData["error"] = null;//销毁此对象,防止多次提示
}
}
说明:
1,在详细信息展示页面,提取数据,判断是否为null。如为null则回退到上一页。并将错误信息提示传递给上一页的view层。
2,B页的控制层 给 A页的view层传值,貌似只能用 TempData。
================================
今日任务: 对 经验 的 点赞 界面设计。
html代码重构 确实是一件很辛苦的事情。这需要专人来做,并需要大量的经验积累。否则还真难拿下这件工作。
右下角增加一点赞按钮
点赞动画效果如下:
点赞
后台没有写。。应该是点完后,按钮数字+1.如 234变成235.
HTML :
<div id="Exper_Praise">
<span id="btn"><i class="iconfont"></i> 234赞 </span>
</div>
Css:
/*点赞*/
#Exper_Praise {
text-align:right;
height: 40px;
}
@font-face {
font-family: 'iconfont';
src: url('http://at.alicdn.com/t/font_1468474149_3307927.eot'); /* IE9*/
src: url('http://at.alicdn.com/t/font_1468474149_3307927.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
url('http://at.alicdn.com/t/font_1468474149_3307927.woff') format('woff'), /* chrome、firefox */
url('http://at.alicdn.com/t/font_1468474149_3307927.ttf') format('truetype'), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/
url('http://at.alicdn.com/t/font_1468474149_3307927.svg#iconfont') format('svg'); /* iOS 4.1- */
}
#btn {
width: 90px;
height: 36px;
line-height: 36px;
background-color:#C0C0C0;
color: #fff;
font-size: 14px;
font-family: Microsoft YaHei;
cursor: pointer;
display: block;
text-align: center;
float:right;
}
#btn i {
display: inline-block;
}
.iconfont {
font-family: "iconfont" !important;
font-size: 16px;
font-style: normal;
-webkit-font-smoothing: antialiased;
-webkit-text-stroke-width: 0.2px;
-moz-osx-font-smoothing: grayscale;
}
@-webkit-keyframes niceIn {
0% {
opacity: 1;
-webkit-transform: scale(1);
transform: scale(1)
}
50% {
opacity: 1;
-webkit-transform: scale(1.5);
transform: scale(1.5)
}
70% {
-webkit-transform: scale(.8);
transform: scale(.8)
}
100% {
opacity: 1;
-webkit-transform: scale(1);
transform: scale(1)
}
}
@keyframes niceIn {
0% {
opacity: 1;
-webkit-transform: scale(1);
-ms-transform: scale(1);
transform: scale(1)
}
50% {
opacity: 1;
-webkit-transform: scale(1.5);
-ms-transform: scale(1.5);
transform: scale(1.5)
}
70% {
-webkit-transform: scale(.8);
-ms-transform: scale(.8);
transform: scale(.8)
}
100% {
opacity: 1;
-webkit-transform: scale(1);
-ms-transform: scale(1);
transform: scale(1)
}
}
@-o-keyframes niceIn{
0% {
opacity: 1;
-o-transform: scale(1);
transform: scale(1)
}
50% {
opacity: 1;
-o-transform: scale(1.5);
transform: scale(1.5)
}
70% {
-o-transform: scale(.8);
transform: scale(.8)
}
100% {
opacity: 1;
-o-transform: scale(1);
transform: scale(1)
}
}
@-moz-keyframes niceIn{
0% {
opacity: 1;
-moz-transform: scale(1);
transform: scale(1)
}
50% {
opacity: 1;
-moz-transform: scale(1.5);
transform:scale(1.5)
}
70% {
-o-transform: scale(.8);
transform: scale(.8)
}
100% {
opacity: 1;
-moz-transform: scale(1);
transform: scale(1)
}
}
.niceIn {
-webkit-animation:niceIn 0.8s .2s ease;
-moz-animation:niceIn 0.8s .2s ease;
-o-animation:niceIn 0.8s .2s ease;
animation:niceIn 0.8s .2s ease;
}
/*点赞结束*/
Javascript:
//依赖 Jquery库,可自行添加 cdn库。比如我用的 <script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js" type="text/javascript"></script>
// 百度静态资源公共库 http://cdn.code.baidu.com/
<script type="text/javascript">
(function ($) {
$.extend({
tipsBox: function (options) {
options = $.extend({
obj: null, //jq对象,要在那个html标签上显示
str: "+1", //字符串,要显示的内容;也可以传一段html,如: "<b style='font-family:Microsoft YaHei;'>+1</b>"
startSize: "12px", //动画开始的文字大小
endSize: "30px", //动画结束的文字大小
interval: 600, //动画时间间隔
color: "red", //文字颜色
callback: function () { } //回调函数
}, options);
$("body").append("<span class='num'>" + options.str + "</span>");
var box = $(".num");
var left = options.obj.offset().left + options.obj.width() / 2;
var top = options.obj.offset().top - options.obj.height();
box.css({
"position": "absolute",
"left": left + "px",
"top": top + "px",
"z-index": 9999,
"font-size": options.startSize,
"line-height": options.endSize,
"color": options.color
});
box.animate({
"font-size": options.endSize,
"opacity": "0",
"top": top - parseInt(options.endSize) + "px"
}, options.interval, function () {
box.remove();
options.callback();
});
}
});
})(jQuery);
function niceIn(prop){
prop.find('i').addClass('niceIn');
setTimeout(function(){
prop.find('i').removeClass('niceIn');
},1000);
}
$(function () {
$("#btn").click(function () {
$.tipsBox({
obj: $(this),
str: "+1",
callback: function () {
}
});
niceIn($(this));
});
});
</script>
下午任务:增加 点赞 逻辑代码
网友评论