Click 3D objects (markers) in the distance, causing the camera to snap to that location

I have seen a couple of similar questions asked, but none that quite get to what I'm trying to do. I am working on a project where I want the user to be able to click on various objects floating in the air in 3D space (in the distance). When the user clicks that object, I want the camera to snap to that position. I need to specify different locations for each 3D marker. Can anyone help me with this? I've added a link to a photo of my scene.

http://www.freeimagehosting.net/uploads/a4eca8ea6b.jpg

Thank you in advance for any help you can offer!

something like this (placed on each marker) ought to do the job, in a very basic way:

function OnMouseUp() {
    Camera.main.transform.LookAt(transform.position);
    Camera.main.transform.position = transform.position;
}

The above simply turns the camera to point at the clicked marker, then sets its position to the marker's position.

You may want to transition the camera to the marker somehow, in which case you'd probably want to use a coroutine and the "Lerp" function, something like this:

function OnMouseUp() {

    var startTime = Time.time;
    var startPos = Camera.main.transform.position;
    var startRot = Camera.main.transform.rotation;
    var targetPos = transform.position;
    var targetRot = transform.rotation;

    targetPos.y = Camera.main.transform.position.y;  // preserve cam's height

    while (Time.time < startTime+1) {
        var i = (Time.time - startTime);
        Camera.main.transform.position = Vector3.Lerp(startPos, targetPos, i);
        Camera.main.transform.rotation= Quaternion.Slerp(startRot, targetRot, i);
        yield;
    }
}

(edited to preserve cam's height, as requested in the comments)

I didn't mean to post in the answer section.