JavaScript : Operators

greator than : >=

less than : <=

 

jQuery each object, element

var $collection = $("ul &gt; li");

$collection.each(function(index, element){

console.log("index is "+index);

console.log("Javascript element is"+element.innerHTML);

console.log("jQuery element is "+$(element).text());

});

var objectCollection = {

school : {

city: "Vancouver",

province: "BC"

}

};

$.each(collection, function(key, value)){

console.log("key is "+key);

console.log("value is "+value);

$.each(value, function(nestedKey, nestedValue){

console.log("Nested key is "+nestedKey);

console.log("Nested value is "+nestedValue);

});

}

JavaScript : Define an empty array

var emptyArray = [];

var newEmptyArray = new Array();

These two are the same, and []; is simpler way. There is no need to use the later one unless you need to define the length of the array.

var anotherEmptyArray = new Array(100);

This defines anotherEmptyArray having 100 items with all slots containing undefined.

JavaScript : global variable and scope, function declaration

"name" variable in the code below outputs "undefined".

var name = "Baggins";
(function () {
    // Outputs: "Original name was undefined"
    console.log("Original name was " + name);

    var name = "Underhill";

    // Outputs: "New name is Underhill"
    console.log("New name is " + name);
})();

 

The (function(){ })(); creates another scope,  and variable defined outside of the scope is not accessible.

The example below is in a different situation.

var name = "Here";

function(){

console.log(name);

}

This is accessible. I need to dig into how they differently work.

 

JavaScript : function declarations vs function expressions

Basically, there are two ways to define a JavaScript function.

function white(){};

var declare = function white(){};

The first one is function declaration, and the later one is function expression which put a function into a defined variable.

The difference between the two is below.

hoisted();  //output the console log

notHoisted();  //output undefined

function hoisted(){

console.log('this function is hoisted!');

}

var notHoisted = function() {

console.log('this function is not hoisted!');

}

In Javascript,  variables and functions are "hoisted" and they are actually available before they are declared, however,

function definition hoisting only occurs for function declarations, not function expressions.

Reference :

http://adripofjavascript.com/blog/drips/variable-and-function-hoisting

http://kangax.github.io/nfe/

Drupal7でContextを使ってブロックを追加すると”[page name] could not be found.”と表示される件

Contextモジュールを使ってPathを指定しブロックを追加すると、

デフォルトの/pagename could not be found.と表示される。

Contextではあくまで条件指定のみでページは作成されていないため、

ページは別で作成する必要あり。

コンテンツの追加から基本ページを選び、作成したパスを指定して空白のページを作成する。

Dru;al7 Image style:ResizeとScaleの違い

Resize : 画像の伸縮や圧縮を通して画像のサイズを変更する

Scale:画像の縦横の比率を保持したままサイズを変更する

Drupal7で特定のjQueryのバージョンをjQuery Multiモジュールを使用して指定する

以前書いたようにViewsUIとMasonryを一緒に使おうとすると特定のバージョンのjQueryを指定する必要がある。

Drupal7 Views UI 7.x-3.xとjQuery 1.8以降の互換性

jQuery Updateモジュールは勝手に最新のバージョンにしてしまうためこちらでバージョンを指定できない。

よってjQuery Multiを使うことにした。

このモジュールを使う上で気をつけるべき点は、有効化する前にlibrariesフォルダに読み込みたいバージョンのjQueryのファイルを置く必要があること。

モジュールダウンロード後、sites/all/librariesフォルダ内にjqueryフォルダを作成し、その中に、

jquery-1.x.x.min.js

といった名称でjQueryライブラリファイルを作成する。jqueryの後はハイフンでないとモジュール自体が有効化されないため注意。(要するにjQuery公式サイトで使われているフィアル名と同じにする必要がある。)

詳細はモジュールをダウンロード後モジュール内に含まれるreadmeファイルを参照。