Hot For Coding
Django1.6静态目录的配置

Django1.6版本已经发布,昨日下载后在配置静态目录时总是出问题,默认配置如下:

"""
Django settings for daybaby project.
 
For more information on this file, see
https://docs.djangoproject.com/en/1.6/topics/settings/
 
For the full list of settings and their values, see
https://docs.djangoproject.com/en/1.6/ref/settings/
"""
 
# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
import os
BASE_DIR = os.path.dirname(os.path.dirname(__file__))
 
 
# Quick-start development settings - unsuitable for production
# See https://docs.djangoproject.com/en/1.6/howto/deployment/checklist/
 
# SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY = '0j9!$d5nc3i2xiso2(bo-9!mkjy7j3%to9r$)0a!kru0d2mr6e'
 
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True
 
TEMPLATE_DEBUG = True
 
ALLOWED_HOSTS = []
 
 
# Application definition
 
INSTALLED_APPS = (
  'django.contrib.admin',
  'django.contrib.auth',
  'django.contrib.contenttypes',
  'django.contrib.sessions',
  'django.contrib.messages',
  'django.contrib.staticfiles',
)
 
MIDDLEWARE_CLASSES = (
  'django.contrib.sessions.middleware.SessionMiddleware',
  'django.middleware.common.CommonMiddleware',
  'django.middleware.csrf.CsrfViewMiddleware',
  'django.contrib.auth.middleware.AuthenticationMiddleware',
  'django.contrib.messages.middleware.MessageMiddleware',
  'django.middleware.clickjacking.XFrameOptionsMiddleware',
)
 
ROOT_URLCONF = 'daybaby.urls'
 
WSGI_APPLICATION = 'daybaby.wsgi.application'
 
 
# Database
# https://docs.djangoproject.com/en/1.6/ref/settings/#databases
 
DATABASES = {
  'default': {
    'ENGINE': 'django.db.backends.sqlite3',
    'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
  }
}
 
# Internationalization
# https://docs.djangoproject.com/en/1.6/topics/i18n/
 
LANGUAGE_CODE = 'zh-cn'
 
TIME_ZONE = 'Asia/Shanghai'
 
USE_I18N = True
 
USE_L10N = True
 
USE_TZ = True
 
 
# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/1.6/howto/static-files/
 
STATIC_URL = '/static/'

...

READ ALL

CSS中width与padding和border的关系

在css中给div定义的宽度是不包含border与padding的,如

<div style="width:100px; height:100px; padding:10px; border:5px solid red;"></div>

这个div虽然宽度给的是100px,但实际上它占用的宽高应该等于:

100px + (5px + 10px) * 2 = 130px

因此经常遇到这种情况

css

#parent {
  width: 200px;
  height: 300px;
}
 
#child {
  width: 188px;
  height: 288px;
  border: 1px solid blue;
  padding: 5px;
}

...

READ ALL

Java项目iframe问题

昨晚在Java Webb项目下iframe嵌一个远程网页,被嵌的页面假设叫a页面,关键在b页面嵌入远程a页面的时候老是弹出:

Failed to find paramater: c0-scriptNmae

Java应用控制台日志打出

Error: java.lang.IllegalArgumentException, Failed to find parameter: c0-scriptName 
Error: java.lang.IllegalArgumentException, Failed to find parameter: c0-scriptName 
Error: java.lang.IllegalArgumentException, Failed to find parameter: c0-scriptName

...

READ ALL

JavaScript从CSS读取样式

有些项目需要简单能配置一些样式。以前一直是把配置信息写在js文件中,这次改变主意把配置的信息写在css文件中,因为都是一些样式的配置,不仅方便而且还不用担心用户js语法写错引起程序报错的问题。

于是就有了一些基本的问题,如何读取这些样式?当然,最简单的引入客户配置的css样式即可。但在一些复杂的UI交互界面时这显得不够灵活,需要提前预知客户给了多少宽高然后才能去做更多的操作,打个比方要把一个用户设置好的div居中,但你不知道用户给div多少宽高,于是需要先读取宽高,然后才能把div居中。假设用户已经给出了样式:

.box {
  width: 80px;
  height: 80px;
}   

...

READ ALL

中文Chrome不能设置小于12px字体

Chrome_12px

中文版本的Chrome小于12px的字体样式无效,并最终以最小的12px显示。大家都知道中文字体跟英文字母在大小美观上还是有范围差距的,有些英文字体6px都毫无压力,然而大部分中文字体都是以12px为临界点,几乎大部分站点的中文字体都是12px,只要小于12px中文字体就开始模糊

FireFox中8px的效果,虽然也能辨认,但还是有点别扭。

Chrome开发人员为了不让它丑陋的展示,限制了中文字体小于12px的样式,但在早期的Chrome版本27及以下版本都可以通过以下样式声明的方式解决这个问题:

...

READ ALL

div的onkeydown&onkeyup在火狐和谷歌上不能工作

正常情况下,我们通常都是在input内捕获onkeydown或者onkeyup事件做一些常用的处理,比如限制输入某一类型的字符,或者限制输入长度等等。

如果要在div里捕获这些onkeydownonkeyup事件则是有浏览器兼容的,如果你直接在节点上绑定属性如

<div onkeydown="console.log('keydown');" style="width:200px; height:300px;"></div>

那么在IE下是可以工作的,而在FireFox、Chrome下则无法工作。当然,有解决方法,两种:

...

READ ALL

Eclipse启动Tomcat错误 A Java Exception has occurred

在Tomcat bin目录下执行startup.bat可以正常启动,但在Eclipse下安装了Tomcat插件并且配置Tomcat路径后启动且报错:A Java Exception has occurred

解决方法,在Eclipse中window -> Preferences -> tomcat -> JVM Settings,在右边的配置页中找到Classpath (Before generated classpath),点击jar/Zip在弹出的文件选择框中选择tomcat目录下的bin/tomcat-juli.jar文件,启动tomcat,错误解决!

...

READ ALL

jQuery EasyUI menu() TypeError _391 is undefined

正在使用jQuery EasyUI做一个右键菜单功能,结果报错:TypeError: _391 is undefined

源码:

$("body").append('<div id="a" class="easyui-menu" style="display:hidden;"><div>one</div><div>two</div></div>');
$("#a").menu("show",{left:100, top:100});

怎么看都没发现写的有什么问题,按照例子我又写了一个做测试

html代码

<div id="a" class="easyui-menu" style="display:hidden;">
  <div>one</div>
  <div>two</div>
</div>

...

READ ALL

addEventListener与removeEventListener实际应用

简单使用

addEventListener添加监听事件函数,有三个参数

  • 第一个参数:监听动作(必须)
  • 第二个参数:触发函数(必须)
  • 第三个参数:一个bool类型。当为false时为冒泡获取(由里向外),true为capture方式(由外向里)。(可选)

关于第三个参数为事件冒泡方式,不在本文说明范围之内!

removeEventListener移除解绑监听事件函数,有两个参数。

  • 第一个参数:监听动作(必须)
  • 第二个参数:绑定动作指定的函数体(必须)

实例1,直接在参数内传入一个匿名函数体:

element.addEventListener('click', function () {
  alert('Hello word!');
});

...

READ ALL

Python私有属性

在Python中可以通过在属性变量名前加上双下划线定义属性为私有属性,如例子

#! encoding=UTF-8
 
class A:
  def __init__(self):
        
    # 定义私有属性
    self.__name = "Nicholas Lee"
      
    # 普通属性定义
    self.age = 19
 
a = A()
 
# 正常输出
print a.age
 
# 提示找不到属性
print a.__name

执行输出:

19
Traceback (most recent call last):
  File "C:\Users\nicholas\Documents\Aptana Studio 3 Workspace\testa\a.py", line 19, in <module>
    print a.__name
AttributeError: A instance has no attribute '__name'

...

READ ALL